@grnsft/if
Version:
Impact Framework
46 lines • 5.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
/* eslint-disable no-process-exit */
const load_1 = require("./lib/load");
const compare_1 = require("./lib/compare");
const args_1 = require("./util/args");
const helpers_1 = require("./util/helpers");
const helpers_2 = require("../common/util/helpers");
const validations_1 = require("../common/util/validations");
const logger_1 = require("../common/util/logger");
const debug_logger_1 = require("../common/util/debug-logger");
const config_1 = require("./config");
const { FAILURE_MESSAGE, SUCCESS_MESSAGE } = config_1.STRINGS;
const IfDiff = async () => {
const pipedSourceManifest = await (0, helpers_2.parseManifestFromStdin)();
const { sourcePath, targetPath } = (0, args_1.parseIfDiffArgs)();
// Call this function with false parameter to prevent log debug messages.
debug_logger_1.debugLogger.overrideConsoleMethods(false);
const { rawSourceManifest, rawTargetManifest } = await (0, load_1.loadIfDiffFiles)({
targetPath,
sourcePath,
pipedSourceManifest,
});
const [sourceManifest, targetManifest] = [
rawSourceManifest,
rawTargetManifest,
].map(validations_1.validateManifest);
const result = (0, compare_1.compare)(sourceManifest, targetManifest);
if (Object.keys(result).length) {
(0, helpers_1.formatNotMatchingLog)({
message: FAILURE_MESSAGE,
...result,
});
process.exit(1);
}
console.log(SUCCESS_MESSAGE);
process.exit(0);
};
IfDiff().catch(error => {
if (error instanceof Error) {
logger_1.logger.error(error);
process.exit(2);
}
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaWYtZGlmZi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxvQ0FBb0M7QUFDcEMscUNBQTJDO0FBQzNDLDJDQUFzQztBQUV0QyxzQ0FBNEM7QUFDNUMsNENBQW9EO0FBQ3BELG9EQUE4RDtBQUM5RCw0REFBNEQ7QUFFNUQsa0RBQTZDO0FBQzdDLDhEQUF3RDtBQUV4RCxxQ0FBaUM7QUFFakMsTUFBTSxFQUFDLGVBQWUsRUFBRSxlQUFlLEVBQUMsR0FBRyxnQkFBTyxDQUFDO0FBRW5ELE1BQU0sTUFBTSxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQ3hCLE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxJQUFBLGdDQUFzQixHQUFFLENBQUM7SUFDM0QsTUFBTSxFQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUMsR0FBRyxJQUFBLHNCQUFlLEdBQUUsQ0FBQztJQUVuRCx5RUFBeUU7SUFDekUsMEJBQVcsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUUxQyxNQUFNLEVBQUMsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUMsR0FBRyxNQUFNLElBQUEsc0JBQWUsRUFBQztRQUNuRSxVQUFVO1FBQ1YsVUFBVTtRQUNWLG1CQUFtQjtLQUNwQixDQUFDLENBQUM7SUFDSCxNQUFNLENBQUMsY0FBYyxFQUFFLGNBQWMsQ0FBQyxHQUFHO1FBQ3ZDLGlCQUFpQjtRQUNqQixpQkFBaUI7S0FDbEIsQ0FBQyxHQUFHLENBQUMsOEJBQWdCLENBQUMsQ0FBQztJQUN4QixNQUFNLE1BQU0sR0FBRyxJQUFBLGlCQUFPLEVBQUMsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBRXZELElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUU7UUFDOUIsSUFBQSw4QkFBb0IsRUFBQztZQUNuQixPQUFPLEVBQUUsZUFBZTtZQUN4QixHQUFHLE1BQU07U0FDVixDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2pCO0lBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM3QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xCLENBQUMsQ0FBQztBQUVGLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtJQUNyQixJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUU7UUFDMUIsZUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2pCO0FBQ0gsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIjIS91c3IvYmluL2VudiBub2RlXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1wcm9jZXNzLWV4aXQgKi9cbmltcG9ydCB7bG9hZElmRGlmZkZpbGVzfSBmcm9tICcuL2xpYi9sb2FkJztcbmltcG9ydCB7Y29tcGFyZX0gZnJvbSAnLi9saWIvY29tcGFyZSc7XG5cbmltcG9ydCB7cGFyc2VJZkRpZmZBcmdzfSBmcm9tICcuL3V0aWwvYXJncyc7XG5pbXBvcnQge2Zvcm1hdE5vdE1hdGNoaW5nTG9nfSBmcm9tICcuL3V0aWwvaGVscGVycyc7XG5pbXBvcnQge3BhcnNlTWFuaWZlc3RGcm9tU3RkaW59IGZyb20gJy4uL2NvbW1vbi91dGlsL2hlbHBlcnMnO1xuaW1wb3J0IHt2YWxpZGF0ZU1hbmlmZXN0fSBmcm9tICcuLi9jb21tb24vdXRpbC92YWxpZGF0aW9ucyc7XG5cbmltcG9ydCB7bG9nZ2VyfSBmcm9tICcuLi9jb21tb24vdXRpbC9sb2dnZXInO1xuaW1wb3J0IHtkZWJ1Z0xvZ2dlcn0gZnJvbSAnLi4vY29tbW9uL3V0aWwvZGVidWctbG9nZ2VyJztcblxuaW1wb3J0IHtTVFJJTkdTfSBmcm9tICcuL2NvbmZpZyc7XG5cbmNvbnN0IHtGQUlMVVJFX01FU1NBR0UsIFNVQ0NFU1NfTUVTU0FHRX0gPSBTVFJJTkdTO1xuXG5jb25zdCBJZkRpZmYgPSBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IHBpcGVkU291cmNlTWFuaWZlc3QgPSBhd2FpdCBwYXJzZU1hbmlmZXN0RnJvbVN0ZGluKCk7XG4gIGNvbnN0IHtzb3VyY2VQYXRoLCB0YXJnZXRQYXRofSA9IHBhcnNlSWZEaWZmQXJncygpO1xuXG4gIC8vIENhbGwgdGhpcyBmdW5jdGlvbiB3aXRoIGZhbHNlIHBhcmFtZXRlciB0byBwcmV2ZW50IGxvZyBkZWJ1ZyBtZXNzYWdlcy5cbiAgZGVidWdMb2dnZXIub3ZlcnJpZGVDb25zb2xlTWV0aG9kcyhmYWxzZSk7XG5cbiAgY29uc3Qge3Jhd1NvdXJjZU1hbmlmZXN0LCByYXdUYXJnZXRNYW5pZmVzdH0gPSBhd2FpdCBsb2FkSWZEaWZmRmlsZXMoe1xuICAgIHRhcmdldFBhdGgsXG4gICAgc291cmNlUGF0aCxcbiAgICBwaXBlZFNvdXJjZU1hbmlmZXN0LFxuICB9KTtcbiAgY29uc3QgW3NvdXJjZU1hbmlmZXN0LCB0YXJnZXRNYW5pZmVzdF0gPSBbXG4gICAgcmF3U291cmNlTWFuaWZlc3QsXG4gICAgcmF3VGFyZ2V0TWFuaWZlc3QsXG4gIF0ubWFwKHZhbGlkYXRlTWFuaWZlc3QpO1xuICBjb25zdCByZXN1bHQgPSBjb21wYXJlKHNvdXJjZU1hbmlmZXN0LCB0YXJnZXRNYW5pZmVzdCk7XG5cbiAgaWYgKE9iamVjdC5rZXlzKHJlc3VsdCkubGVuZ3RoKSB7XG4gICAgZm9ybWF0Tm90TWF0Y2hpbmdMb2coe1xuICAgICAgbWVzc2FnZTogRkFJTFVSRV9NRVNTQUdFLFxuICAgICAgLi4ucmVzdWx0LFxuICAgIH0pO1xuXG4gICAgcHJvY2Vzcy5leGl0KDEpO1xuICB9XG5cbiAgY29uc29sZS5sb2coU1VDQ0VTU19NRVNTQUdFKTtcbiAgcHJvY2Vzcy5leGl0KDApO1xufTtcblxuSWZEaWZmKCkuY2F0Y2goZXJyb3IgPT4ge1xuICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgIGxvZ2dlci5lcnJvcihlcnJvcik7XG4gICAgcHJvY2Vzcy5leGl0KDIpO1xuICB9XG59KTtcbiJdfQ==