UNPKG

@fugitivesclub/nft-cli

Version:
24 lines (23 loc) 920 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getConfiguration = void 0; const tslib_1 = require("tslib"); const class_transformer_1 = require("class-transformer"); const class_validator_1 = require("class-validator"); const fs = (0, tslib_1.__importStar)(require("fs")); const configuration_interface_1 = require("./interfaces/configuration.interface"); const getConfiguration = async (path) => { const content = await fs.promises.readFile(path, { encoding: 'utf-8', }); const json = JSON.parse(content); const config = (0, class_transformer_1.plainToClass)(configuration_interface_1.Configuration, json, { exposeDefaultValues: true, exposeUnsetFields: true, }); await (0, class_validator_1.validateOrReject)(config, { skipMissingProperties: false, }); return config; }; exports.getConfiguration = getConfiguration;