UNPKG

@medusajs/utils

Version:

Medusa utilities functions shared by Medusa core and Modules

39 lines 1.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.defineMikroOrmCliConfig = defineMikroOrmCliConfig; const postgresql_1 = require("@mikro-orm/postgresql"); const common_1 = require("../common"); const dal_1 = require("../dal"); const dml_1 = require("../dml"); /** * Defines a MikroORM CLI config based on the provided options. * Convert any DML entities to MikroORM entities to be consumed * by mikro orm cli. * * @param moduleName * @param options */ function defineMikroOrmCliConfig(moduleName, options) { if (!options.entities?.length) { throw new Error("defineMikroOrmCliConfig failed with: entities is required"); } const dmlEntities = options.entities.filter(dml_1.DmlEntity.isDmlEntity); const nonDmlEntities = options.entities.filter((entity) => entity && !dml_1.DmlEntity.isDmlEntity(entity)); const entities = nonDmlEntities.concat((0, dml_1.toMikroOrmEntities)(dmlEntities)); const normalizedModuleName = (0, common_1.kebabCase)(moduleName.replace("Service", "")); const databaseName = `medusa-${normalizedModuleName}`; return (0, postgresql_1.defineConfig)({ dbName: databaseName, host: "127.0.0.1", user: "postgres", password: "", ...options, entities: entities.filter(Boolean), migrations: { snapshotName: `.snapshot-${databaseName}`, generator: dal_1.CustomTsMigrationGenerator, ...options.migrations, }, }); } //# sourceMappingURL=mikro-orm-cli-config-builder.js.map