UNPKG

adr

Version:

轻量级架构记录工具 - Command-line tools for working with Architecture Decision Records

89 lines 5.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); let fs = require('fs'); let LRU = require('lru-cache'); let cache = new LRU({ max: 500 }); let path = require('path'); const utils_1 = require("./utils"); let DEFAULT_CONFIG = { language: 'en', path: utils_1.default.getWorkDir() + '/docs/adr/', prefix: '', digits: 4, editor: 'code', force_nfc: false, extension: 'md' }; function getAllConfig(defaultValue) { if (!fs.existsSync(utils_1.default.getWorkDir() + '/.adr.json')) { return defaultValue; } let config = fs.readFileSync(utils_1.default.getWorkDir() + '/.adr.json', 'utf8'); try { let parsedConfig = JSON.parse(config); cache.set('config', parsedConfig); return parsedConfig; } catch (e) { console.error(e); return defaultValue; } } function getConfig(key) { let defaultValue = DEFAULT_CONFIG[key]; let config; if (cache.get('config')) { config = cache.get('config'); } else { config = getAllConfig(defaultValue); } if (config && config[key]) { return config[key]; } return defaultValue; } function getLanguage() { return getConfig('language'); } function getPrefix() { return getConfig('prefix'); } function getDigits() { return getConfig('digits'); } function getSavePath() { return getConfig('path'); } function getCachePath() { return path.resolve(getConfig('path'), './.cache'); } function getAssetsPath() { return path.resolve(getConfig('path'), './assets'); } function getEditor() { return getConfig('editor'); } function getForceNfc() { return getConfig('force_nfc'); } function getDocExtension() { return getConfig('extension'); } let Config = { getAllConfig: getAllConfig, getSavePath: getSavePath, getLanguage: getLanguage, getPrefix: getPrefix, getDigits: getDigits, getEditor: getEditor, getConfig: getConfig, getAssetsPath: getAssetsPath, getCachePath: getCachePath, getForceNfc: getForceNfc, getDocExtension: getDocExtension }; exports.default = Config; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9Db25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDdEIsSUFBSSxHQUFHLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0FBQzlCLElBQUksS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0NBQ1QsQ0FBQyxDQUFBO0FBQ0YsSUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0FBRTFCLG1DQUEyQjtBQUUzQixJQUFJLGNBQWMsR0FBRztJQUNuQixRQUFRLEVBQUUsSUFBSTtJQUNkLElBQUksRUFBRSxlQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsWUFBWTtJQUN2QyxNQUFNLEVBQUUsRUFBRTtJQUNWLE1BQU0sRUFBRSxDQUFDO0lBQ1QsTUFBTSxFQUFFLE1BQU07SUFDZCxTQUFTLEVBQUUsS0FBSztJQUNoQixTQUFTLEVBQUUsSUFBSTtDQUNoQixDQUFBO0FBRUQsU0FBUyxZQUFZLENBQUUsWUFBb0I7SUFDekMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsZUFBSyxDQUFDLFVBQVUsRUFBRSxHQUFHLFlBQVksQ0FBQyxFQUFFO1FBQ3JELE9BQU8sWUFBWSxDQUFBO0tBQ3BCO0lBQ0QsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxlQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFBO0lBQ3ZFLElBQUk7UUFDRixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ3JDLEtBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFBO1FBRWpDLE9BQU8sWUFBWSxDQUFBO0tBQ3BCO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ2hCLE9BQU8sWUFBWSxDQUFBO0tBQ3BCO0FBQ0gsQ0FBQztBQUVELFNBQVMsU0FBUyxDQUFFLEdBQVc7SUFDN0IsSUFBSSxZQUFZLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3RDLElBQUksTUFBTSxDQUFBO0lBQ1YsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ3ZCLE1BQU0sR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0tBQzdCO1NBQU07UUFDTCxNQUFNLEdBQUcsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFBO0tBQ3BDO0lBQ0QsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ3pCLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0tBQ25CO0lBRUQsT0FBTyxZQUFZLENBQUE7QUFDckIsQ0FBQztBQUVELFNBQVMsV0FBVztJQUNsQixPQUFPLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQTtBQUM5QixDQUFDO0FBRUQsU0FBUyxTQUFTO0lBQ2hCLE9BQU8sU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0FBQzVCLENBQUM7QUFFRCxTQUFTLFNBQVM7SUFDaEIsT0FBTyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUE7QUFDNUIsQ0FBQztBQUVELFNBQVMsV0FBVztJQUNsQixPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUMxQixDQUFDO0FBRUQsU0FBUyxZQUFZO0lBQ25CLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUE7QUFDcEQsQ0FBQztBQUVELFNBQVMsYUFBYTtJQUNwQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFBO0FBQ3BELENBQUM7QUFFRCxTQUFTLFNBQVM7SUFDaEIsT0FBTyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUE7QUFDNUIsQ0FBQztBQUVELFNBQVMsV0FBVztJQUNsQixPQUFPLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtBQUMvQixDQUFDO0FBRUQsU0FBUyxlQUFlO0lBQ3RCLE9BQU8sU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0FBQy9CLENBQUM7QUFFRCxJQUFJLE1BQU0sR0FBRztJQUNYLFlBQVksRUFBRSxZQUFZO0lBQzFCLFdBQVcsRUFBRSxXQUFXO0lBQ3hCLFdBQVcsRUFBRSxXQUFXO0lBQ3hCLFNBQVMsRUFBRSxTQUFTO0lBQ3BCLFNBQVMsRUFBRSxTQUFTO0lBQ3BCLFNBQVMsRUFBRSxTQUFTO0lBQ3BCLFNBQVMsRUFBRSxTQUFTO0lBQ3BCLGFBQWEsRUFBRSxhQUFhO0lBQzVCLFlBQVksRUFBRSxZQUFZO0lBQzFCLFdBQVcsRUFBRSxXQUFXO0lBQ3hCLGVBQWUsRUFBRSxlQUFlO0NBQ2pDLENBQUE7QUFFRCxrQkFBZSxNQUFNLENBQUEifQ==