2011-03-31 06:32:47 +00:00
|
|
|
/*
|
|
|
|
* nconf.js: Top-level include for the nconf module
|
|
|
|
*
|
|
|
|
* (C) 2011, Charlie Robbins
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
2011-05-14 05:47:26 +00:00
|
|
|
var Provider = require('./nconf/provider').Provider,
|
|
|
|
nconf = module.exports = Object.create(Provider.prototype);
|
2011-03-31 06:32:47 +00:00
|
|
|
|
2011-04-19 21:34:42 +00:00
|
|
|
//
|
2011-05-17 02:44:46 +00:00
|
|
|
// Use the memory engine by default.
|
2011-04-19 21:34:42 +00:00
|
|
|
//
|
2011-05-17 02:44:46 +00:00
|
|
|
nconf.use('memory');
|
|
|
|
|
|
|
|
//
|
2011-06-05 05:39:39 +00:00
|
|
|
// Expose the version from the package.json using `pkginfo`.
|
2011-05-17 02:44:46 +00:00
|
|
|
//
|
2011-06-08 03:45:01 +00:00
|
|
|
require('pkginfo')(module, 'version');
|
2011-04-19 21:34:42 +00:00
|
|
|
|
|
|
|
//
|
2011-05-14 05:47:26 +00:00
|
|
|
// ### function path (key)
|
|
|
|
// #### @key {string} The ':' delimited key to split
|
|
|
|
// Returns a fully-qualified path to a nested nconf key.
|
2011-04-02 07:03:16 +00:00
|
|
|
//
|
2011-05-14 05:47:26 +00:00
|
|
|
nconf.path = function (key) {
|
|
|
|
return key.split(':');
|
2011-04-02 07:03:16 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
//
|
|
|
|
// ### function key (arguments)
|
|
|
|
// Returns a `:` joined string from the `arguments`.
|
|
|
|
//
|
|
|
|
nconf.key = function () {
|
|
|
|
return Array.prototype.slice.call(arguments).join(':');
|
|
|
|
};
|
|
|
|
|
|
|
|
//
|
2011-05-14 05:47:26 +00:00
|
|
|
// Expose the various components included with nconf
|
2011-04-02 23:17:04 +00:00
|
|
|
//
|
2011-05-14 05:47:26 +00:00
|
|
|
nconf.stores = require('./nconf/stores');
|
|
|
|
nconf.Provider = Provider;
|