chore: remove internal module resources option (#9582)

What:
* removes resouces type "shared" or "isolated" from internal modules.
* modules can have an isolated database connection by providing a database config as part of their options on `medusa-config`

CLOSES: FRMW-2593
This commit is contained in:
Carlos R. L. Rodrigues
2024-10-17 21:31:46 +00:00
committed by GitHub
parent b07dd33a57
commit 902ac12f73
36 changed files with 75 additions and 258 deletions
+9 -11
View File
@@ -18,6 +18,7 @@ import {
dynamicImport,
GraphQLUtils,
isObject,
isSharedConnectionSymbol,
isString,
MedusaError,
MODULE_PACKAGE_NAMES,
@@ -34,7 +35,7 @@ import {
} from "./medusa-module"
import { RemoteLink } from "./remote-link"
import { createQuery, RemoteQuery } from "./remote-query"
import { MODULE_RESOURCE_TYPE, MODULE_SCOPE } from "./types"
import { MODULE_SCOPE } from "./types"
const LinkModulePackage = MODULE_PACKAGE_NAMES[Modules.LINK]
@@ -123,15 +124,14 @@ export async function loadModules(args: {
}
declaration.scope ??= MODULE_SCOPE.INTERNAL
if (declaration.scope === MODULE_SCOPE.INTERNAL && !declaration.resources) {
declaration.resources = MODULE_RESOURCE_TYPE.SHARED
}
if (
declaration.scope === MODULE_SCOPE.INTERNAL &&
declaration.resources === MODULE_RESOURCE_TYPE.SHARED
) {
if (declaration.scope === MODULE_SCOPE.INTERNAL) {
declaration.options ??= {}
if (!declaration.options.database) {
declaration.options[isSharedConnectionSymbol] = true
}
declaration.options.database ??= {
...sharedResourcesConfig?.database,
}
@@ -493,9 +493,7 @@ async function MedusaApp_({
for (const { resolution: moduleResolution } of moduleResolutions) {
if (
!moduleResolution.options?.database &&
moduleResolution.moduleDeclaration?.scope === MODULE_SCOPE.INTERNAL &&
moduleResolution.moduleDeclaration?.resources ===
MODULE_RESOURCE_TYPE.SHARED
moduleResolution.moduleDeclaration?.scope === MODULE_SCOPE.INTERNAL
) {
moduleResolution.options ??= {}
moduleResolution.options.database = {