UNPKG

curli-config

Version:

A small library to load/validate configuration files placed in different sides of the application using environments

26 lines (25 loc) 958 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const MergerFileHelper_1 = require("./MergerFileHelper"); const ValidateUsingSchema_1 = require("../Validation/ValidateUsingSchema"); class LoaderConfigsFilesGroup { constructor(path, forceValidateSchemas) { this.path = path; this.forceValidateSchemas = forceValidateSchemas; this.laoderCollection = []; } add(loaderConfigsFile) { this.laoderCollection.push(loaderConfigsFile); } getConfig() { let config = {}; this.laoderCollection.forEach((loaderConfigsFile) => { config = MergerFileHelper_1.mergeValues(config, loaderConfigsFile.loadFile()); }); if (this.forceValidateSchemas) { new ValidateUsingSchema_1.ValidateUsingSchema(config, this.path); } return config; } } exports.LoaderConfigsFilesGroup = LoaderConfigsFilesGroup;