UNPKG

hypershield

Version:

Middleware suite for high-performance and resilient APIs

33 lines 1.06 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ConfigFactory = void 0; const validator_1 = require("./validator"); class ConfigFactory { constructor() { this.currentConfig = validator_1.ConfigValidator.validate({}); } static getInstance() { if (!ConfigFactory.instance) { ConfigFactory.instance = new ConfigFactory(); } return ConfigFactory.instance; } updateConfig(config) { this.currentConfig = validator_1.ConfigValidator.validate(config); } getConfig() { return Object.assign({}, this.currentConfig); } loadEnvironmentConfig() { const env = process.env.NODE_ENV || 'development'; try { const envConfig = require(`../../../config/${env}.json`); this.updateConfig(envConfig); } catch (error) { console.warn(`No configuration found for environment: ${env}`); } } } exports.ConfigFactory = ConfigFactory; //# sourceMappingURL=configFactory.js.map