Generated the following references: - `medusa` - `modules` - `modules_sdk` - `payment_provider` - `workflows`
304 lines
81 KiB
Plaintext
304 lines
81 KiB
Plaintext
import { TypeList } from "docs-ui"
|
|
|
|
# modules-sdk
|
|
|
|
## Enumerations
|
|
|
|
- [MODULE\_SCOPE](../../modules_sdk/enums/modules_sdk.MODULE_SCOPE/page.mdx)
|
|
- [MODULE\_RESOURCE\_TYPE](../../modules_sdk/enums/modules_sdk.MODULE_RESOURCE_TYPE/page.mdx)
|
|
|
|
## Classes
|
|
|
|
- [RemoteLink](../../modules_sdk/classes/modules_sdk.RemoteLink/page.mdx)
|
|
- [Query](../../modules_sdk/classes/modules_sdk.Query/page.mdx)
|
|
- [RemoteQuery](../../modules_sdk/classes/modules_sdk.RemoteQuery/page.mdx)
|
|
|
|
## Type Aliases
|
|
|
|
- [RunMigrationFn](../../modules_sdk/types/modules_sdk.RunMigrationFn/page.mdx)
|
|
- [RevertMigrationFn](../../modules_sdk/types/modules_sdk.RevertMigrationFn/page.mdx)
|
|
- [GenerateMigrations](../../modules_sdk/types/modules_sdk.GenerateMigrations/page.mdx)
|
|
- [GetLinkExecutionPlanner](../../modules_sdk/types/modules_sdk.GetLinkExecutionPlanner/page.mdx)
|
|
- [MedusaModuleConfig](../../modules_sdk/types/modules_sdk.MedusaModuleConfig/page.mdx)
|
|
- [SharedResources](../../modules_sdk/types/modules_sdk.SharedResources/page.mdx)
|
|
- [MedusaAppOutput](../../modules_sdk/types/modules_sdk.MedusaAppOutput/page.mdx)
|
|
- [MedusaAppOptions](../../modules_sdk/types/modules_sdk.MedusaAppOptions/page.mdx)
|
|
- [MigrationOptions](../../modules_sdk/types/modules_sdk.MigrationOptions/page.mdx)
|
|
- [ModuleBootstrapOptions](../../modules_sdk/types/modules_sdk.ModuleBootstrapOptions/page.mdx)
|
|
- [LinkModuleBootstrapOptions](../../modules_sdk/types/modules_sdk.LinkModuleBootstrapOptions/page.mdx)
|
|
- [RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx)
|
|
- [DeleteEntityInput](../../modules_sdk/types/modules_sdk.DeleteEntityInput/page.mdx)
|
|
- [RestoreEntityInput](../../modules_sdk/types/modules_sdk.RestoreEntityInput/page.mdx)
|
|
|
|
## Variables
|
|
|
|
- [MODULE\_PACKAGE\_NAMES](page.mdx#module_package_names)
|
|
- [ModulesDefinition](page.mdx#modulesdefinition)
|
|
- [MODULE\_DEFINITIONS](page.mdx#module_definitions)
|
|
- [MedusaModule](page.mdx#medusamodule)
|
|
|
|
## Functions
|
|
|
|
- [moduleLoader](page.mdx#moduleloader)
|
|
- [moduleProviderLoader](page.mdx#moduleproviderloader)
|
|
- [loadModuleProvider](page.mdx#loadmoduleprovider)
|
|
- [registerMedusaModule](page.mdx#registermedusamodule)
|
|
- [registerMedusaLinkModule](page.mdx#registermedusalinkmodule)
|
|
- [loadModules](page.mdx#loadmodules)
|
|
- [MedusaApp](page.mdx#medusaapp)
|
|
- [MedusaAppMigrateUp](page.mdx#medusaappmigrateup)
|
|
- [MedusaAppMigrateDown](page.mdx#medusaappmigratedown)
|
|
- [MedusaAppMigrateGenerate](page.mdx#medusaappmigrategenerate)
|
|
- [MedusaAppGetLinksExecutionPlanner](page.mdx#medusaappgetlinksexecutionplanner)
|
|
- [createQuery](page.mdx#createquery)
|
|
- [cleanGraphQLSchema](page.mdx#cleangraphqlschema)
|
|
- [gqlGetFieldsAndRelations](page.mdx#gqlgetfieldsandrelations)
|
|
- [gqlSchemaToTypes](page.mdx#gqlschematotypes)
|
|
- [graphqlSchemaToFields](page.mdx#graphqlschematofields)
|
|
|
|
___
|
|
|
|
## Variables
|
|
|
|
### MODULE\_PACKAGE\_NAMES
|
|
|
|
`Const` **MODULE\_PACKAGE\_NAMES**: `Object`
|
|
|
|
#### Properties
|
|
|
|
<TypeList types={[{"name":"Auth","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/auth\"","expandable":false,"children":[]},{"name":"Cache","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/cache-inmemory\"","expandable":false,"children":[]},{"name":"Cart","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/cart\"","expandable":false,"children":[]},{"name":"Customer","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/customer\"","expandable":false,"children":[]},{"name":"EventBus","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/event-bus-local\"","expandable":false,"children":[]},{"name":"Inventory","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/inventory-next\"","expandable":false,"children":[]},{"name":"LinkModules","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/link-modules\"","expandable":false,"children":[]},{"name":"Payment","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/payment\"","expandable":false,"children":[]},{"name":"Pricing","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/pricing\"","expandable":false,"children":[]},{"name":"Product","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/product\"","expandable":false,"children":[]},{"name":"Promotion","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/promotion\"","expandable":false,"children":[]},{"name":"SalesChannel","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/sales-channel\"","expandable":false,"children":[]},{"name":"Fulfillment","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/fulfillment\"","expandable":false,"children":[]},{"name":"StockLocation","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/stock-location-next\"","expandable":false,"children":[]},{"name":"Tax","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/tax\"","expandable":false,"children":[]},{"name":"User","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/user\"","expandable":false,"children":[]},{"name":"Workflows","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/workflow-engine-inmemory\"","expandable":false,"children":[]},{"name":"Region","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/region\"","expandable":false,"children":[]},{"name":"Order","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/order\"","expandable":false,"children":[]},{"name":"ApiKey","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/api-key\"","expandable":false,"children":[]},{"name":"Store","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/store\"","expandable":false,"children":[]},{"name":"Currency","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/currency\"","expandable":false,"children":[]},{"name":"File","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/file\"","expandable":false,"children":[]},{"name":"Notification","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/notification\"","expandable":false,"children":[]},{"name":"Index","type":"`string`","description":"","optional":false,"defaultValue":"\"@medusajs/index\"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MODULE_PACKAGE_NAMES"/>
|
|
|
|
### ModulesDefinition
|
|
|
|
`Const` **ModulesDefinition**: `object`
|
|
|
|
### MODULE\_DEFINITIONS
|
|
|
|
`Const` **MODULE\_DEFINITIONS**: [ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)[]
|
|
|
|
### MedusaModule
|
|
|
|
`Const` **MedusaModule**: typeof `MedusaModule`
|
|
|
|
___
|
|
|
|
## Functions
|
|
|
|
### moduleLoader
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"__namedParameters","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"container","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"moduleResolutions","type":"`Record<string, [ModuleResolution](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleResolution/page.mdx)>`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"resolutionPath","type":"`string` \\| `false`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"moduleDeclaration","type":"[InternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalModuleDeclaration/page.mdx) \\| [ExternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ExternalModuleDeclaration/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"moduleExports","type":"[ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"logger","type":"[Logger](../../types/LoggerTypes/interfaces/types.LoggerTypes.Logger/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"panic","type":"(`data`: `any`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"shouldLog","type":"(`level`: `string`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"setLogLevel","type":"(`level`: `string`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"unsetLogLevel","type":"() => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"activity","type":"(`message`: `string`, `config?`: `any`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"progress","type":"(`activityId`: `any`, `message`: `any`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"error","type":"(`messageOrError`: `any`, `error?`: `any`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"failure","type":"(`activityId`: `any`, `message`: `any`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"success","type":"(`activityId`: `any`, `message`: `any`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"debug","type":"(`message`: `any`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"info","type":"(`message`: `any`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"warn","type":"(`message`: `any`) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"log","type":"(...`args`: `any`[]) => `void`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"migrationOnly","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"loaderOnly","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="moduleLoader"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<void>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="moduleLoader"/>
|
|
|
|
### moduleProviderLoader
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"__namedParameters","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"container","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"providers","type":"[ModuleProvider](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleProvider/page.mdx)[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"resolve","type":"`string` \\| [ModuleProviderExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleProviderExports/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"id","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"registerServiceFn","type":"(`klass`: `any`, `container`: [MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx), `moduleDetails`: `any`) => Promise<void>","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="moduleProviderLoader"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<void>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="moduleProviderLoader"/>
|
|
|
|
### loadModuleProvider
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"container","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"provider","type":"[ModuleProvider](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleProvider/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"resolve","type":"`string` \\| [ModuleProviderExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleProviderExports/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"services","type":"[Constructor](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.Constructor/page.mdx)<any>[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"id","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"registerServiceFn","type":"(`klass`: `any`, `container`: `any`, `moduleDetails`: `any`) => Promise<void>","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="loadModuleProvider"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<any[]>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"any[]","type":"`any`[]","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"any","type":"`any`","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="loadModuleProvider"/>
|
|
|
|
### registerMedusaModule
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"moduleKey","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"moduleDeclaration","type":"`string` \\| `false` \\| Partial<[InternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalModuleDeclaration/page.mdx) \\| [ExternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ExternalModuleDeclaration/page.mdx)>","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"moduleExports","type":"[ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"service","type":"T","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"loaders","type":"[ModuleLoaderFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleLoaderFunction/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"key","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"defaultPackage","type":"`string` \\| `false`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"label","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"defaultModuleDeclaration","type":"[InternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalModuleDeclaration/page.mdx) \\| [ExternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ExternalModuleDeclaration/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"scope","type":"`\"internal\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"resources","type":"`\"shared\"` \\| `\"isolated\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"scope","type":"`\"external\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[CustomModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.CustomModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"resolve","type":"`string` \\| [ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"alias","type":"`string`","description":"If multiple modules are registered with the same key, the alias can be used to differentiate them","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"main","type":"`boolean`","description":"If the module is the main module for the key when multiple ones are registered","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"worker_mode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[CustomModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.CustomModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"server","type":"`object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"alias","type":"`string`","description":"If multiple modules are registered with the same key, the alias can be used to differentiate them","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"main","type":"`boolean`","description":"If the module is the main module for the key when multiple ones are registered","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"isRequired","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isQueryable","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="registerMedusaModule"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Record","type":"`Record<string, [ModuleResolution](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleResolution/page.mdx)>`","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"string","type":"`string`","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]},{"name":"ModuleResolution","type":"[ModuleResolution](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleResolution/page.mdx)","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"resolutionPath","type":"`string` \\| `false`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"key","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"defaultPackage","type":"`string` \\| `false`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"label","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"defaultModuleDeclaration","type":"[InternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalModuleDeclaration/page.mdx) \\| [ExternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ExternalModuleDeclaration/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"isRequired","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isQueryable","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"moduleDeclaration","type":"[InternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalModuleDeclaration/page.mdx) \\| [ExternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ExternalModuleDeclaration/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"scope","type":"`\"internal\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"resources","type":"`\"shared\"` \\| `\"isolated\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"scope","type":"`\"external\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[CustomModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.CustomModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"resolve","type":"`string` \\| [ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"alias","type":"`string`","description":"If multiple modules are registered with the same key, the alias can be used to differentiate them","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"main","type":"`boolean`","description":"If the module is the main module for the key when multiple ones are registered","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"worker_mode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[CustomModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.CustomModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"server","type":"`object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"alias","type":"`string`","description":"If multiple modules are registered with the same key, the alias can be used to differentiate them","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"main","type":"`boolean`","description":"If the module is the main module for the key when multiple ones are registered","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"moduleExports","type":"[ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"service","type":"T","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"loaders","type":"[ModuleLoaderFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleLoaderFunction/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="registerMedusaModule"/>
|
|
|
|
### registerMedusaLinkModule
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"key","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"defaultPackage","type":"`string` \\| `false`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"label","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"defaultModuleDeclaration","type":"[InternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalModuleDeclaration/page.mdx) \\| [ExternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ExternalModuleDeclaration/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"scope","type":"`\"internal\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"resources","type":"`\"shared\"` \\| `\"isolated\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"scope","type":"`\"external\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[CustomModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.CustomModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"resolve","type":"`string` \\| [ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"alias","type":"`string`","description":"If multiple modules are registered with the same key, the alias can be used to differentiate them","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"main","type":"`boolean`","description":"If the module is the main module for the key when multiple ones are registered","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"worker_mode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[CustomModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.CustomModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"server","type":"`object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"alias","type":"`string`","description":"If multiple modules are registered with the same key, the alias can be used to differentiate them","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"main","type":"`boolean`","description":"If the module is the main module for the key when multiple ones are registered","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"isRequired","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isQueryable","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"moduleDeclaration","type":"Partial<[InternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalModuleDeclaration/page.mdx)>","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"scope","type":"`\"internal\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"resources","type":"`\"shared\"` \\| `\"isolated\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[CustomModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.CustomModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"key","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"label","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isQueryable","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"resolve","type":"`string` \\| [ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"service","type":"T","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"loaders","type":"[ModuleLoaderFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleLoaderFunction/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"alias","type":"`string`","description":"If multiple modules are registered with the same key, the alias can be used to differentiate them","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"main","type":"`boolean`","description":"If the module is the main module for the key when multiple ones are registered","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"worker_mode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"moduleExports","type":"[ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"service","type":"T","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"loaders","type":"[ModuleLoaderFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleLoaderFunction/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="registerMedusaLinkModule"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Record","type":"`Record<string, [ModuleResolution](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleResolution/page.mdx)>`","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"string","type":"`string`","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]},{"name":"ModuleResolution","type":"[ModuleResolution](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleResolution/page.mdx)","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"resolutionPath","type":"`string` \\| `false`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"key","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"defaultPackage","type":"`string` \\| `false`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"label","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"defaultModuleDeclaration","type":"[InternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalModuleDeclaration/page.mdx) \\| [ExternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ExternalModuleDeclaration/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"isRequired","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isQueryable","type":"`boolean`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"moduleDeclaration","type":"[InternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalModuleDeclaration/page.mdx) \\| [ExternalModuleDeclaration](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ExternalModuleDeclaration/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"scope","type":"`\"internal\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"resources","type":"`\"shared\"` \\| `\"isolated\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"scope","type":"`\"external\"`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"dependencies","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[CustomModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.CustomModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"resolve","type":"`string` \\| [ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"alias","type":"`string`","description":"If multiple modules are registered with the same key, the alias can be used to differentiate them","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"main","type":"`boolean`","description":"If the module is the main module for the key when multiple ones are registered","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"worker_mode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"definition","type":"[CustomModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.CustomModuleDefinition/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"server","type":"`object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"`Record<string, unknown>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"alias","type":"`string`","description":"If multiple modules are registered with the same key, the alias can be used to differentiate them","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"main","type":"`boolean`","description":"If the module is the main module for the key when multiple ones are registered","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"moduleExports","type":"[ModuleExports](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleExports/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"service","type":"T","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"loaders","type":"[ModuleLoaderFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleLoaderFunction/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="registerMedusaLinkModule"/>
|
|
|
|
### loadModules
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"modulesConfig","type":"`any`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedContainer","type":"`any`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"migrationOnly","type":"`boolean`","description":"","optional":false,"defaultValue":"false","expandable":false,"children":[]},{"name":"loaderOnly","type":"`boolean`","description":"","optional":false,"defaultValue":"false","expandable":false,"children":[]},{"name":"workerMode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":false,"defaultValue":"\"server\"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="loadModules"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<object>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="loadModules"/>
|
|
|
|
### MedusaApp
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"options","type":"[MedusaAppOptions](../../modules_sdk/types/modules_sdk.MedusaAppOptions/page.mdx)","description":"","optional":false,"defaultValue":"{}","expandable":false,"children":[{"name":"workerMode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedContainer","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedResourcesConfig","type":"[SharedResources](../../modules_sdk/types/modules_sdk.SharedResources/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"database","type":"[ModuleServiceInitializeOptions](../../types/ModulesSdkTypes/interfaces/types.ModulesSdkTypes.ModuleServiceInitializeOptions/page.mdx)[`\"database\"`] & `object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"loadedModules","type":"[LoadedModule](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.LoadedModule/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"__joinerConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"__definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"servicesConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"schema","type":"`string`","description":"GraphQL schema for the all module's available entities and fields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"relationships","type":"[ModuleJoinerRelationship](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerRelationship/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extends","type":"`object`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"serviceName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"primaryKeys","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isLink","type":"`boolean`","description":"If the module is a link module","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkableKeys","type":"`Record<string, string>`","description":"Keys that can be used to link to other modules. e.g { product\\_id: \"Product\" } \"Product\" being the entity it refers to","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isReadOnlyLink","type":"`boolean`","description":"If true it expands a RemoteQuery property but doesn't create a pivot table","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extraDataFields","type":"`string`[]","description":"Fields that will be part of the link record aside from the primary keys that can be updated\nIf not explicitly defined, this array will be populated by databaseConfig.extraFields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"databaseConfig","type":"`object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"modulesConfigPath","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfigFileName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfig","type":"[MedusaModuleConfig](../../modules_sdk/types/modules_sdk.MedusaModuleConfig/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkModules","type":"[RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx) \\| [RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"remoteFetchData","type":"`RemoteFetchDataCallback`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"injectedDependencies","type":"`any`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"onApplicationStartCb","type":"() => `void`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"loaderOnly","type":"`boolean`","description":"Forces the modules bootstrapper to only run the modules loaders and return prematurely","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaApp"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<[MedusaAppOutput](../../modules_sdk/types/modules_sdk.MedusaAppOutput/page.mdx)>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"MedusaAppOutput","type":"[MedusaAppOutput](../../modules_sdk/types/modules_sdk.MedusaAppOutput/page.mdx)","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"modules","type":"`Record<string, [LoadedModule](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.LoadedModule/page.mdx) \\| [LoadedModule](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.LoadedModule/page.mdx)[]>`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"link","type":"[RemoteLink](../../modules_sdk/classes/modules_sdk.RemoteLink/page.mdx) \\| `undefined`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"query","type":"[RemoteQueryFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.RemoteQueryFunction/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"graph","type":"[QueryGraphFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.QueryGraphFunction/page.mdx)","description":"Graph function uses the remoteQuery under the hood and\nreturns a result set","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"gql","type":"(`query`: `string`, `variables?`: `Record<string, unknown>`, `options?`: [RemoteJoinerOptions](../../types/interfaces/types.RemoteJoinerOptions/page.mdx)) => Promise<any>","description":"Query wrapper to provide specific GraphQL like API around remoteQuery.query","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"runMigrations","type":"[RunMigrationFn](../../modules_sdk/types/modules_sdk.RunMigrationFn/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"revertMigrations","type":"[RevertMigrationFn](../../modules_sdk/types/modules_sdk.RevertMigrationFn/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"generateMigrations","type":"[GenerateMigrations](../../modules_sdk/types/modules_sdk.GenerateMigrations/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"linkMigrationExecutionPlanner","type":"[GetLinkExecutionPlanner](../../modules_sdk/types/modules_sdk.GetLinkExecutionPlanner/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"onApplicationShutdown","type":"() => Promise<void>","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"onApplicationPrepareShutdown","type":"() => Promise<void>","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"onApplicationStart","type":"() => Promise<void>","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"entitiesMap","type":"`Record<string, any>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"gqlSchema","type":"`GraphQLSchema`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"notFound","type":"`Record<string, Record<string, string>>`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedContainer","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaApp"/>
|
|
|
|
### MedusaAppMigrateUp
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"options","type":"[MedusaAppOptions](../../modules_sdk/types/modules_sdk.MedusaAppOptions/page.mdx)","description":"","optional":false,"defaultValue":"{}","expandable":false,"children":[{"name":"workerMode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedContainer","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedResourcesConfig","type":"[SharedResources](../../modules_sdk/types/modules_sdk.SharedResources/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"database","type":"[ModuleServiceInitializeOptions](../../types/ModulesSdkTypes/interfaces/types.ModulesSdkTypes.ModuleServiceInitializeOptions/page.mdx)[`\"database\"`] & `object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"loadedModules","type":"[LoadedModule](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.LoadedModule/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"__joinerConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"__definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"servicesConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"schema","type":"`string`","description":"GraphQL schema for the all module's available entities and fields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"relationships","type":"[ModuleJoinerRelationship](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerRelationship/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extends","type":"`object`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"serviceName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"primaryKeys","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isLink","type":"`boolean`","description":"If the module is a link module","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkableKeys","type":"`Record<string, string>`","description":"Keys that can be used to link to other modules. e.g { product\\_id: \"Product\" } \"Product\" being the entity it refers to","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isReadOnlyLink","type":"`boolean`","description":"If true it expands a RemoteQuery property but doesn't create a pivot table","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extraDataFields","type":"`string`[]","description":"Fields that will be part of the link record aside from the primary keys that can be updated\nIf not explicitly defined, this array will be populated by databaseConfig.extraFields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"databaseConfig","type":"`object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"modulesConfigPath","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfigFileName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfig","type":"[MedusaModuleConfig](../../modules_sdk/types/modules_sdk.MedusaModuleConfig/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkModules","type":"[RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx) \\| [RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"remoteFetchData","type":"`RemoteFetchDataCallback`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"injectedDependencies","type":"`any`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"onApplicationStartCb","type":"() => `void`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"loaderOnly","type":"`boolean`","description":"Forces the modules bootstrapper to only run the modules loaders and return prematurely","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaAppMigrateUp"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<void>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaAppMigrateUp"/>
|
|
|
|
### MedusaAppMigrateDown
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"moduleNames","type":"`string`[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"[MedusaAppOptions](../../modules_sdk/types/modules_sdk.MedusaAppOptions/page.mdx)","description":"","optional":false,"defaultValue":"{}","expandable":false,"children":[{"name":"workerMode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedContainer","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedResourcesConfig","type":"[SharedResources](../../modules_sdk/types/modules_sdk.SharedResources/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"database","type":"[ModuleServiceInitializeOptions](../../types/ModulesSdkTypes/interfaces/types.ModulesSdkTypes.ModuleServiceInitializeOptions/page.mdx)[`\"database\"`] & `object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"loadedModules","type":"[LoadedModule](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.LoadedModule/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"__joinerConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"__definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"servicesConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"schema","type":"`string`","description":"GraphQL schema for the all module's available entities and fields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"relationships","type":"[ModuleJoinerRelationship](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerRelationship/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extends","type":"`object`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"serviceName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"primaryKeys","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isLink","type":"`boolean`","description":"If the module is a link module","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkableKeys","type":"`Record<string, string>`","description":"Keys that can be used to link to other modules. e.g { product\\_id: \"Product\" } \"Product\" being the entity it refers to","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isReadOnlyLink","type":"`boolean`","description":"If true it expands a RemoteQuery property but doesn't create a pivot table","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extraDataFields","type":"`string`[]","description":"Fields that will be part of the link record aside from the primary keys that can be updated\nIf not explicitly defined, this array will be populated by databaseConfig.extraFields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"databaseConfig","type":"`object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"modulesConfigPath","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfigFileName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfig","type":"[MedusaModuleConfig](../../modules_sdk/types/modules_sdk.MedusaModuleConfig/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkModules","type":"[RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx) \\| [RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"remoteFetchData","type":"`RemoteFetchDataCallback`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"injectedDependencies","type":"`any`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"onApplicationStartCb","type":"() => `void`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"loaderOnly","type":"`boolean`","description":"Forces the modules bootstrapper to only run the modules loaders and return prematurely","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaAppMigrateDown"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<void>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaAppMigrateDown"/>
|
|
|
|
### MedusaAppMigrateGenerate
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"moduleNames","type":"`string`[]","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"options","type":"[MedusaAppOptions](../../modules_sdk/types/modules_sdk.MedusaAppOptions/page.mdx)","description":"","optional":false,"defaultValue":"{}","expandable":false,"children":[{"name":"workerMode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedContainer","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedResourcesConfig","type":"[SharedResources](../../modules_sdk/types/modules_sdk.SharedResources/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"database","type":"[ModuleServiceInitializeOptions](../../types/ModulesSdkTypes/interfaces/types.ModulesSdkTypes.ModuleServiceInitializeOptions/page.mdx)[`\"database\"`] & `object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"loadedModules","type":"[LoadedModule](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.LoadedModule/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"__joinerConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"__definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"servicesConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"schema","type":"`string`","description":"GraphQL schema for the all module's available entities and fields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"relationships","type":"[ModuleJoinerRelationship](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerRelationship/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extends","type":"`object`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"serviceName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"primaryKeys","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isLink","type":"`boolean`","description":"If the module is a link module","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkableKeys","type":"`Record<string, string>`","description":"Keys that can be used to link to other modules. e.g { product\\_id: \"Product\" } \"Product\" being the entity it refers to","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isReadOnlyLink","type":"`boolean`","description":"If true it expands a RemoteQuery property but doesn't create a pivot table","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extraDataFields","type":"`string`[]","description":"Fields that will be part of the link record aside from the primary keys that can be updated\nIf not explicitly defined, this array will be populated by databaseConfig.extraFields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"databaseConfig","type":"`object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"modulesConfigPath","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfigFileName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfig","type":"[MedusaModuleConfig](../../modules_sdk/types/modules_sdk.MedusaModuleConfig/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkModules","type":"[RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx) \\| [RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"remoteFetchData","type":"`RemoteFetchDataCallback`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"injectedDependencies","type":"`any`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"onApplicationStartCb","type":"() => `void`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"loaderOnly","type":"`boolean`","description":"Forces the modules bootstrapper to only run the modules loaders and return prematurely","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaAppMigrateGenerate"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<void>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaAppMigrateGenerate"/>
|
|
|
|
### MedusaAppGetLinksExecutionPlanner
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"options","type":"[MedusaAppOptions](../../modules_sdk/types/modules_sdk.MedusaAppOptions/page.mdx)","description":"","optional":false,"defaultValue":"{}","expandable":false,"children":[{"name":"workerMode","type":"`\"shared\"` \\| `\"worker\"` \\| `\"server\"`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedContainer","type":"[MedusaContainer](../../medusa/types/medusa.MedusaContainer-1/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"sharedResourcesConfig","type":"[SharedResources](../../modules_sdk/types/modules_sdk.SharedResources/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"database","type":"[ModuleServiceInitializeOptions](../../types/ModulesSdkTypes/interfaces/types.ModulesSdkTypes.ModuleServiceInitializeOptions/page.mdx)[`\"database\"`] & `object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"loadedModules","type":"[LoadedModule](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.LoadedModule/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"__joinerConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"__definition","type":"[ModuleDefinition](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleDefinition/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"servicesConfig","type":"[ModuleJoinerConfig](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[{"name":"schema","type":"`string`","description":"GraphQL schema for the all module's available entities and fields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"relationships","type":"[ModuleJoinerRelationship](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.ModuleJoinerRelationship/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extends","type":"`object`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"serviceName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"primaryKeys","type":"`string`[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isLink","type":"`boolean`","description":"If the module is a link module","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkableKeys","type":"`Record<string, string>`","description":"Keys that can be used to link to other modules. e.g { product\\_id: \"Product\" } \"Product\" being the entity it refers to","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"isReadOnlyLink","type":"`boolean`","description":"If true it expands a RemoteQuery property but doesn't create a pivot table","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"extraDataFields","type":"`string`[]","description":"Fields that will be part of the link record aside from the primary keys that can be updated\nIf not explicitly defined, this array will be populated by databaseConfig.extraFields","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"databaseConfig","type":"`object`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"modulesConfigPath","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfigFileName","type":"`string`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"modulesConfig","type":"[MedusaModuleConfig](../../modules_sdk/types/modules_sdk.MedusaModuleConfig/page.mdx)","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"linkModules","type":"[RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx) \\| [RegisterModuleJoinerConfig](../../modules_sdk/types/modules_sdk.RegisterModuleJoinerConfig/page.mdx)[]","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"remoteFetchData","type":"`RemoteFetchDataCallback`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"injectedDependencies","type":"`any`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"onApplicationStartCb","type":"() => `void`","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"loaderOnly","type":"`boolean`","description":"Forces the modules bootstrapper to only run the modules loaders and return prematurely","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaAppGetLinksExecutionPlanner"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<[ILinkMigrationsPlanner](../../types/interfaces/types.ILinkMigrationsPlanner/page.mdx)>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"ILinkMigrationsPlanner","type":"[ILinkMigrationsPlanner](../../types/interfaces/types.ILinkMigrationsPlanner/page.mdx)","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"createPlan","type":"() => Promise<[LinkMigrationsPlannerAction](../../types/types/types.LinkMigrationsPlannerAction/page.mdx)[]>","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"executePlan","type":"(`actions`: [LinkMigrationsPlannerAction](../../types/types/types.LinkMigrationsPlannerAction/page.mdx)[]) => Promise<void>","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="MedusaAppGetLinksExecutionPlanner"/>
|
|
|
|
### createQuery
|
|
|
|
API wrapper around the remoteQuery with backward compatibility support
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"remoteQuery","type":"[RemoteQuery](../../modules_sdk/classes/modules_sdk.RemoteQuery/page.mdx)","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"traceFetchRemoteData","type":"(`fetcher`: () => Promise<any>, `serviceName`: `string`, `method`: `string`, `options`: ``{ select?: string[] ; relations: string[] }``) => Promise<any>","description":"","optional":true,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="createQuery"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Omit","type":"Omit<[RemoteQueryFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.RemoteQueryFunction/page.mdx), symbol>","optional":false,"defaultValue":"","description":"API wrapper around the remoteQuery with backward compatibility support","expandable":false,"children":[{"name":"RemoteQueryFunction","type":"[RemoteQueryFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.RemoteQueryFunction/page.mdx)","optional":false,"defaultValue":"","description":"","expandable":false,"children":[{"name":"graph","type":"[QueryGraphFunction](../../types/ModulesSdkTypes/types/types.ModulesSdkTypes.QueryGraphFunction/page.mdx)","description":"Graph function uses the remoteQuery under the hood and\nreturns a result set","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"gql","type":"(`query`: `string`, `variables?`: `Record<string, unknown>`, `options?`: [RemoteJoinerOptions](../../types/interfaces/types.RemoteJoinerOptions/page.mdx)) => Promise<any>","description":"Query wrapper to provide specific GraphQL like API around remoteQuery.query","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"symbol","type":"`symbol`","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="createQuery"/>
|
|
|
|
### cleanGraphQLSchema
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"schema","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="cleanGraphQLSchema"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"schema","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"notFound","type":"`Record<string, Record<string, string>>`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="cleanGraphQLSchema"/>
|
|
|
|
<TypeList types={[{"name":"schema","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"notFound","type":"`Record<string, Record<string, string>>`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="cleanGraphQLSchema"/>
|
|
|
|
### gqlGetFieldsAndRelations
|
|
|
|
Generate a list of fields and fields relations for a given type with the requested relations
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"schemaTypeMap","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"typeName","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"relations","type":"`string`[]","description":"","optional":false,"defaultValue":"[]","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="gqlGetFieldsAndRelations"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"string[]","type":"`string`[]","optional":false,"defaultValue":"","description":"Generate a list of fields and fields relations for a given type with the requested relations","expandable":false,"children":[{"name":"string","type":"`string`","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="gqlGetFieldsAndRelations"/>
|
|
|
|
### gqlSchemaToTypes
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"__namedParameters","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"schema","type":"`GraphQLSchema`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"outputDir","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"filename","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="gqlSchemaToTypes"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"Promise","type":"Promise<void>","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="gqlSchemaToTypes"/>
|
|
|
|
### graphqlSchemaToFields
|
|
|
|
From graphql schema get all the fields for the requested type and relations
|
|
|
|
#### Example
|
|
|
|
```ts
|
|
const userModule = `
|
|
type User {
|
|
id: ID!
|
|
name: String!
|
|
blabla: WHATEVER
|
|
}
|
|
|
|
type Post {
|
|
author: User!
|
|
}
|
|
`
|
|
|
|
const postModule = `
|
|
type Post {
|
|
id: ID!
|
|
title: String!
|
|
date: String
|
|
}
|
|
|
|
type User {
|
|
posts: [Post!]!
|
|
}
|
|
|
|
type WHATEVER {
|
|
random_field: String
|
|
post: Post
|
|
}
|
|
`
|
|
|
|
const mergedSchema = mergeTypeDefs([userModule, postModule])
|
|
const schema = makeExecutableSchema({
|
|
typeDefs: mergedSchema,
|
|
})
|
|
|
|
const fields = graphqlSchemaToFields(types, "User", ["posts"])
|
|
|
|
console.log(fields)
|
|
|
|
// [
|
|
// "id",
|
|
// "name",
|
|
// "posts.id",
|
|
// "posts.title",
|
|
// "posts.date",
|
|
// ]
|
|
```
|
|
|
|
#### Parameters
|
|
|
|
<TypeList types={[{"name":"schemaTypeMap","type":"`object`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"typeName","type":"`string`","description":"","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"relations","type":"`string`[]","description":"","optional":false,"defaultValue":"[]","expandable":false,"children":[]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="graphqlSchemaToFields"/>
|
|
|
|
#### Returns
|
|
|
|
<TypeList types={[{"name":"string[]","type":"`string`[]","optional":false,"defaultValue":"","description":"From graphql schema get all the fields for the requested type and relations","expandable":false,"children":[{"name":"string","type":"`string`","optional":false,"defaultValue":"","description":"","expandable":false,"children":[]}]}]} expandUrl="https://docs.medusajs.com/v2/advanced-development/data-models/manage-relationships#retrieve-records-of-relation" sectionTitle="graphqlSchemaToFields"/>
|