UNPKG

@medusajs/medusa

Version:

Building blocks for digital commerce

56 lines 2.16 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = adminLoader; const logger_1 = require("@medusajs/framework/logger"); const path_1 = __importDefault(require("path")); const utils_1 = require("../utils"); const NOT_ALLOWED_PATHS = ["/auth", "/store", "/admin"]; async function adminLoader({ app, configModule, rootDirectory, plugins, }) { const { admin } = configModule; const sources = []; const pluginAdminPaths = []; for (const plugin of plugins) { if (!plugin.admin) { continue; } if (plugin.admin.type === "local") { sources.push(plugin.admin.resolve); } else { pluginAdminPaths.push(plugin.admin.resolve); } } const adminOptions = { disable: false, sources, plugins: pluginAdminPaths, ...admin, outDir: path_1.default.join(rootDirectory, utils_1.ADMIN_RELATIVE_OUTPUT_DIR), }; if (adminOptions?.disable) { return app; } if (NOT_ALLOWED_PATHS.includes(adminOptions.path)) { logger_1.logger.error(`The 'admin.path' in 'medusa-config.js' is set to a value that is not allowed. This can prevent your server from working correctly. Please set 'admin.path' to a value that is not one of the following: ${NOT_ALLOWED_PATHS.join(", ")}.`); } if (process.env.NODE_ENV === "development") { return initDevelopmentServer(app, adminOptions); } return serveProductionBuild(app, adminOptions); } async function initDevelopmentServer(app, options) { const { develop } = await import("@medusajs/admin-bundler"); const adminMiddleware = await develop(options); app.use(options.path, adminMiddleware); return app; } async function serveProductionBuild(app, options) { const { serve } = await import("@medusajs/admin-bundler"); const adminRoute = await serve(options); app.use(options.path, adminRoute); return app; } //# sourceMappingURL=admin.js.map