UNPKG

@coko/server

Version:

Reusable server for use by Coko's projects

36 lines 1.34 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const cors_1 = __importDefault(require("cors")); const config_1 = __importDefault(require("../configManager/config")); const urls_1 = require("../utils/urls"); const internals_1 = __importDefault(require("../logger/internals")); const createCORSConfig = () => { internals_1.default.section('Setting CORS origin'); const fromConfig = config_1.default.has('corsOrigin') && config_1.default.get('corsOrigin'); if (!urls_1.clientUrl && !fromConfig) return null; const defaultList = [urls_1.clientUrl].filter(i => !!i); let extra = []; if (fromConfig) { if (Array.isArray(fromConfig)) { extra = fromConfig; } else { extra = fromConfig.split(',').map(i => i.trim()); } } return { origin: [...defaultList, ...extra], credentials: true, }; }; const middleware = () => { const corsConfig = createCORSConfig(); internals_1.default.point(`CORS origin set to: ${corsConfig?.origin?.toString() || 'null'}`); return (0, cors_1.default)(corsConfig); }; exports.default = middleware; //# sourceMappingURL=cors.js.map