chore(modules-sdk): Custom Module definition (#7315)
This commit is contained in:
1 parent
bf83d1cfe6
commit
e2dfe91071
6 files changed
+35
-80
No files matched your search
@@ -18,6 +18,7 @@ import {
|
||||
ContainerRegistrationKeys,
|
||||
FlagRouter,
|
||||
isObject,
|
||||
upperCaseFirst,
|
||||
} from "@medusajs/utils"
|
||||
|
||||
import { asValue } from "awilix"
|
||||
@@ -38,6 +39,23 @@ export function mergeDefaultModules(
|
||||
configModules[defaultModule.key] ??= defaultModule.defaultModuleDeclaration
|
||||
}
|
||||
|
||||
for (const [key, value] of Object.entries(
|
||||
configModules as Record<string, InternalModuleDeclaration>
|
||||
)) {
|
||||
const def = {} as ModuleDefinition
|
||||
def.key ??= key
|
||||
def.registrationName ??= key
|
||||
def.label ??= upperCaseFirst(key)
|
||||
|
||||
const orignalDef = value?.definition
|
||||
if (isObject(orignalDef)) {
|
||||
value.definition = {
|
||||
...orignalDef,
|
||||
...def,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return configModules
|
||||
}
|
||||
|
||||
@@ -75,28 +93,6 @@ export async function migrateMedusaApp(
|
||||
}
|
||||
const configModules = mergeDefaultModules(configModule.modules)
|
||||
|
||||
// Apply default options to legacy modules
|
||||
for (const moduleKey of Object.keys(configModules)) {
|
||||
if (!ModulesDefinition[moduleKey]?.isLegacy) {
|
||||
continue
|
||||
}
|
||||
|
||||
if (isObject(configModules[moduleKey])) {
|
||||
;(
|
||||
configModules[moduleKey] as Partial<InternalModuleDeclaration>
|
||||
).options ??= {
|
||||
database: {
|
||||
type: "postgres",
|
||||
url: sharedResourcesConfig.database.clientUrl,
|
||||
clientUrl: sharedResourcesConfig.database.clientUrl,
|
||||
extra: configModule.projectConfig.database_extra,
|
||||
schema: configModule.projectConfig.database_schema,
|
||||
logging: configModule.projectConfig.database_logging,
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
await MedusaAppMigrateUp({
|
||||
modulesConfig: configModules,
|
||||
remoteFetchData: remoteQueryFetchData(container),
|
||||
@@ -141,27 +137,6 @@ export const loadMedusaApp = async (
|
||||
|
||||
const configModules = mergeDefaultModules(configModule.modules)
|
||||
|
||||
// Apply default options to legacy modules
|
||||
for (const moduleKey of Object.keys(configModules)) {
|
||||
if (!ModulesDefinition[moduleKey]?.isLegacy) {
|
||||
continue
|
||||
}
|
||||
|
||||
if (isObject(configModules[moduleKey])) {
|
||||
;(
|
||||
configModules[moduleKey] as Partial<InternalModuleDeclaration>
|
||||
).options ??= {
|
||||
database: {
|
||||
type: "postgres",
|
||||
url: configModule.projectConfig.database_url,
|
||||
extra: configModule.projectConfig.database_extra,
|
||||
schema: configModule.projectConfig.database_schema,
|
||||
logging: configModule.projectConfig.database_logging,
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const medusaApp = await MedusaApp({
|
||||
workerMode: configModule.projectConfig.worker_mode,
|
||||
modulesConfig: configModules,
|
||||
@@ -261,27 +236,6 @@ export async function runModulesLoader({
|
||||
|
||||
const configModules = mergeDefaultModules(configModule.modules)
|
||||
|
||||
// Apply default options to legacy modules
|
||||
for (const moduleKey of Object.keys(configModules)) {
|
||||
if (!ModulesDefinition[moduleKey]?.isLegacy) {
|
||||
continue
|
||||
}
|
||||
|
||||
if (isObject(configModules[moduleKey])) {
|
||||
;(
|
||||
configModules[moduleKey] as Partial<InternalModuleDeclaration>
|
||||
).options ??= {
|
||||
database: {
|
||||
type: "postgres",
|
||||
url: configModule.projectConfig.database_url,
|
||||
extra: configModule.projectConfig.database_extra,
|
||||
schema: configModule.projectConfig.database_schema,
|
||||
logging: configModule.projectConfig.database_logging,
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
await MedusaApp({
|
||||
modulesConfig: configModules,
|
||||
remoteFetchData: remoteQueryFetchData(container),
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
import { ConfigModule } from "@medusajs/types"
|
||||
|
||||
import { ModulesDefinition } from "@medusajs/modules-sdk"
|
||||
|
||||
/**
|
||||
* Merge the modules config from the medusa-config file with the modules config from medusa package
|
||||
* @param modules
|
||||
@@ -24,12 +22,6 @@ export function mergeModulesConfig(
|
||||
for (const moduleName of allModulesKeys) {
|
||||
const internalModuleConfig = medusaInternalModulesConfig[moduleName]
|
||||
|
||||
const moduleDefinition = ModulesDefinition[moduleName]
|
||||
|
||||
if (moduleDefinition?.isLegacy) {
|
||||
continue
|
||||
}
|
||||
|
||||
modules_[moduleName] ??= internalModuleConfig
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user