• File: parse.js
  • Full Path: /var/www/nodejs/daily_store_reports_nodejs/node_modules/nodemon/lib/rules/parse.js
  • Date Modified: 02/04/2023 9:31 PM
  • File size: 804 bytes
  • MIME-type: text/plain
  • Charset: utf-8
'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;