git.schokokeks.org
Repositories
Help
Report an Issue
fs-words.git
Code
Commits
Branches
Tags
Suche
Strukturansicht:
6e9c872
Branches
Tags
develop-client_server
master
typescript
fs-words.git
server
lib
node_modules
rc
index.js
[add] server:lib:node_modules
Christian Fraß
commited
6e9c872
at 2021-03-08 23:52:07
index.js
Blame
History
Raw
var cc = require('./lib/utils') var join = require('path').join var deepExtend = require('deep-extend') var etc = '/etc' var win = process.platform === "win32" var home = win ? process.env.USERPROFILE : process.env.HOME module.exports = function (name, defaults, argv, parse) { if('string' !== typeof name) throw new Error('rc(name): name *must* be string') if(!argv) argv = require('minimist')(process.argv.slice(2)) defaults = ( 'string' === typeof defaults ? cc.json(defaults) : defaults ) || {} parse = parse || cc.parse var env = cc.env(name + '_') var configs = [defaults] var configFiles = [] function addConfigFile (file) { if (configFiles.indexOf(file) >= 0) return var fileConfig = cc.file(file) if (fileConfig) { configs.push(parse(fileConfig)) configFiles.push(file) } } // which files do we look at? if (!win) [join(etc, name, 'config'), join(etc, name + 'rc')].forEach(addConfigFile) if (home) [join(home, '.config', name, 'config'), join(home, '.config', name), join(home, '.' + name, 'config'), join(home, '.' + name + 'rc')].forEach(addConfigFile) addConfigFile(cc.find('.'+name+'rc')) if (env.config) addConfigFile(env.config) if (argv.config) addConfigFile(argv.config) return deepExtend.apply(null, configs.concat([ env, argv, configFiles.length ? {configs: configFiles, config: configFiles[configFiles.length - 1]} : undefined, ])) }