UNPKG

nmvikings_gendiff

Version:

Compares two configuration files and shows a difference.

44 lines (28 loc) 3.28 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); var _fs = require('fs'); var fs = _interopRequireWildcard(_fs); var _ast = require('./ast'); var _ast2 = _interopRequireDefault(_ast); var _parsers = require('./parsers'); var _parsers2 = _interopRequireDefault(_parsers); var _renders = require('./renders'); var _renders2 = _interopRequireDefault(_renders); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } var genDiff = function genDiff(path1, path2, format) { var _map = [path1, path2].map(function (p) { return (0, _parsers2.default)(p)(fs.readFileSync(p, 'utf-8')); }), _map2 = _slicedToArray(_map, 2), json1 = _map2[0], json2 = _map2[1]; var ast = (0, _ast2.default)(json1, json2); var render = (0, _renders2.default)(format); return render(ast); }; exports.default = genDiff; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJmcyIsImdlbkRpZmYiLCJwYXRoMSIsInBhdGgyIiwiZm9ybWF0IiwibWFwIiwicCIsInJlYWRGaWxlU3luYyIsImpzb24xIiwianNvbjIiLCJhc3QiLCJyZW5kZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7O0lBQVlBLEU7O0FBRVo7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7OztBQUVBLElBQU1DLFVBQVUsU0FBVkEsT0FBVSxDQUFDQyxLQUFELEVBQVFDLEtBQVIsRUFBZUMsTUFBZixFQUEwQjtBQUFBLGFBQ2pCLENBQUNGLEtBQUQsRUFBUUMsS0FBUixFQUFlRSxHQUFmLENBQW1CO0FBQUEsV0FBSyx1QkFBVUMsQ0FBVixFQUFhTixHQUFHTyxZQUFILENBQWdCRCxDQUFoQixFQUFtQixPQUFuQixDQUFiLENBQUw7QUFBQSxHQUFuQixDQURpQjtBQUFBO0FBQUEsTUFDakNFLEtBRGlDO0FBQUEsTUFDMUJDLEtBRDBCOztBQUV4QyxNQUFNQyxNQUFNLG1CQUFPRixLQUFQLEVBQWNDLEtBQWQsQ0FBWjtBQUNBLE1BQU1FLFNBQVMsdUJBQVVQLE1BQVYsQ0FBZjs7QUFFQSxTQUFPTyxPQUFPRCxHQUFQLENBQVA7QUFDRCxDQU5EOztrQkFRZVQsTyIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcblxuaW1wb3J0IGdlbkFzdCBmcm9tICcuL2FzdCc7XG5pbXBvcnQgZ2V0UGFyc2VyIGZyb20gJy4vcGFyc2Vycyc7XG5pbXBvcnQgZ2V0UmVuZGVyIGZyb20gJy4vcmVuZGVycyc7XG5cbmNvbnN0IGdlbkRpZmYgPSAocGF0aDEsIHBhdGgyLCBmb3JtYXQpID0+IHtcbiAgY29uc3QgW2pzb24xLCBqc29uMl0gPSBbcGF0aDEsIHBhdGgyXS5tYXAocCA9PiBnZXRQYXJzZXIocCkoZnMucmVhZEZpbGVTeW5jKHAsICd1dGYtOCcpKSk7XG4gIGNvbnN0IGFzdCA9IGdlbkFzdChqc29uMSwganNvbjIpO1xuICBjb25zdCByZW5kZXIgPSBnZXRSZW5kZXIoZm9ybWF0KTtcblxuICByZXR1cm4gcmVuZGVyKGFzdCk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBnZW5EaWZmO1xuIl19