30 lines
821 B
JavaScript
30 lines
821 B
JavaScript
'use strict';
|
|
|
|
var bitcore = require('bitcore');
|
|
var $ = bitcore.util.preconditions;
|
|
var _ = bitcore.deps._;
|
|
var path = require('path');
|
|
var fs = require('fs');
|
|
|
|
/**
|
|
* Will return the path and bitcore-node configuration
|
|
* @param {String} cwd - The absolute path to the current working directory
|
|
*/
|
|
function findConfig(cwd) {
|
|
$.checkArgument(_.isString(cwd), 'Argument should be a string');
|
|
$.checkArgument(path.isAbsolute(cwd), 'Argument should be an absolute path');
|
|
var directory = String(cwd);
|
|
while (!fs.existsSync(path.resolve(directory, 'bitcore-node.json'))) {
|
|
directory = path.resolve(directory, '../');
|
|
if (directory === '/') {
|
|
return false;
|
|
}
|
|
}
|
|
return {
|
|
path: directory,
|
|
config: require(path.resolve(directory, 'bitcore-node.json'))
|
|
};
|
|
}
|
|
|
|
module.exports = findConfig;
|