| 1234567891011121314151617181920212223242526272829303132 | 'use strict';module.exports = exports = reveal;exports.usage = 'Reveals data on the versioned binary';const versioning = require('./util/versioning.js');const napi = require('./util/napi.js');function unix_paths(key, val) {  return val && val.replace ? val.replace(/\\/g, '/') : val;}function reveal(gyp, argv, callback) {  const package_json = gyp.package_json;  const napi_build_version = napi.get_napi_build_version_from_command_args(argv);  const opts = versioning.evaluate(package_json, gyp.opts, napi_build_version);  let hit = false;  // if a second arg is passed look to see  // if it is a known option  // console.log(JSON.stringify(gyp.opts,null,1))  const remain = gyp.opts.argv.remain[gyp.opts.argv.remain.length - 1];  if (remain && Object.hasOwnProperty.call(opts, remain)) {    console.log(opts[remain].replace(/\\/g, '/'));    hit = true;  }  // otherwise return all options as json  if (!hit) {    console.log(JSON.stringify(opts, unix_paths, 2));  }  return callback();}
 |