You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
804 B
43 lines
804 B
'use strict'; |
|
var fs = require('fs'); |
|
|
|
/** |
|
* Parse the nodemon config file, supporting both old style |
|
* plain text config file, and JSON version of the config |
|
* |
|
* @param {String} filename |
|
* @param {Function} callback |
|
*/ |
|
function parse(filename, callback) { |
|
var rules = { |
|
ignore: [], |
|
watch: [], |
|
}; |
|
|
|
fs.readFile(filename, 'utf8', function (err, content) { |
|
|
|
if (err) { |
|
return callback(err); |
|
} |
|
|
|
var json = null; |
|
try { |
|
json = JSON.parse(content); |
|
} catch (e) {} |
|
|
|
if (json !== null) { |
|
rules = { |
|
ignore: json.ignore || [], |
|
watch: json.watch || [], |
|
}; |
|
|
|
return callback(null, rules); |
|
} |
|
|
|
// otherwise return the raw file |
|
return callback(null, { raw: content.split(/\n/) }); |
|
}); |
|
} |
|
|
|
module.exports = parse; |
|
|
|
|