aboutsummaryrefslogtreecommitdiff
path: root/node_modules/po2json/lib/parseFile.js
blob: af7dc691192dc2a5c0c0810683c5d20a990c763d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
var fs = require("fs");

/**
 * Asynchronously parse a PO file to JSON
 *
 * @param {String} fileName - File name
 * @param {Object} [options]
 * @param {Function} cb - Callback function, takes 2 arguments: err and result
 */

module.exports = function(fileName, options, cb) {
  options = options || {};

  if (typeof options === 'function') {
    cb = options;
    options = {};
  }

  fs.realpath(fileName, function (err, realFile) {
    if (err) return cb(err);

    fs.readFile(realFile, function (err, data) {
      if (err) return cb(err);

      cb(null, require("./parse")( data, options ));
    });
  });
};