UNPKG

reiso

Version:
53 lines 4.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fs = require("fs"); const path = require("path"); const Translation = require("../Modules/Translation"); const Config_1 = require("./Lib/Config"); const DefaultConfig_1 = require("./DefaultConfig"); let configPath = path.resolve(process.env.CONFIG_PATH || './reiso.json'); let scope = process.env.SCOPE || 'default'; let config = JSON.parse(JSON.stringify(DefaultConfig_1.default)); function getConfig() { return config[scope]; } exports.getConfig = getConfig; let translations = {}; function setTranslation(config) { if (config[scope].languages) { try { let translation = JSON.parse(fs.readFileSync(path.resolve(config[scope].translation), "utf8")); translations = Config_1.mapReduce(config[scope].languages, translation); } catch (e) { translations = {}; } Translation.setState(config[scope].defaultLanguage, config[scope].languages, translations); } } function setConfig(newConfig) { config = Object.assign(config, JSON.parse(Config_1.parseEnv(JSON.stringify(newConfig)))); setTranslation(config); } exports.setConfig = setConfig; function readConfig() { try { if (fs.existsSync(configPath)) config = Object.assign(config, JSON.parse(Config_1.parseEnv(fs.readFileSync(configPath, "utf8")))); } catch (e) { } setTranslation(config); } exports.readConfig = readConfig; exports.saveConfig = (config) => { if (fs.existsSync(configPath)) fs.writeFileSync(configPath, JSON.stringify(config, null, 2), { encoding: 'utf8' }); else fs.writeFileSync(configPath, JSON.stringify(config, null, 2), { encoding: 'utf8', flag: 'wx' }); }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1NlcnZlci9Db25maWcudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEseUJBQXlCO0FBQ3pCLDZCQUE2QjtBQUU3QixzREFBc0Q7QUFDdEQseUNBQW1EO0FBQ25ELG1EQUE0QztBQUU1QyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxJQUFJLGNBQWMsQ0FBQyxDQUFDO0FBQ3pFLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQztBQUUzQyxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQWEsQ0FBQyxDQUFDLENBQUM7QUFFdkQ7SUFDRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN2QixDQUFDO0FBRkQsOEJBRUM7QUFFRCxJQUFJLFlBQVksR0FBUSxFQUFFLENBQUM7QUFFM0Isd0JBQXdCLE1BTXZCO0lBQ0MsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFO1FBQzNCLElBQUk7WUFDRixJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUMvRixZQUFZLEdBQUcsa0JBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQ2hFO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixZQUFZLEdBQUcsRUFBRSxDQUFBO1NBQ2xCO1FBRUQsV0FBVyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLENBQUM7S0FDNUY7QUFDSCxDQUFDO0FBRUQsbUJBQTBCLFNBQVM7SUFDakMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN6QixDQUFDO0FBSEQsOEJBR0M7QUFFRDtJQUNFLElBQUk7UUFDRixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDO1lBQUUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQVEsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMxSDtJQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUU7SUFDZCxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDekIsQ0FBQztBQUxELGdDQUtDO0FBRVksUUFBQSxVQUFVLEdBQUcsQ0FBQyxNQUFNLEVBQUUsRUFBRTtJQUNuQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDO1FBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQzNGLFFBQVEsRUFBRSxNQUFNO1NBQ2pCLENBQUMsQ0FBQTs7UUFDRyxFQUFFLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDakUsUUFBUSxFQUFFLE1BQU07WUFDaEIsSUFBSSxFQUFFLElBQUk7U0FDWCxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUEifQ==