UNPKG

@grnsft/if

Version:

Impact Framework

30 lines 3.66 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ExportYaml = void 0; const utils_1 = require("@grnsft/if-core/utils"); const yaml_1 = require("../../common/util/yaml"); const config_1 = require("../config"); const { ExhaustOutputArgError } = utils_1.ERRORS; const { OUTPUT_REQUIRED, EXPORTING_TO_YAML_FILE } = config_1.STRINGS; const ExportYaml = () => { /** * Saves output file in YAML format. */ const execute = async (tree, context, outputPath) => { if (!outputPath) { throw new ExhaustOutputArgError(OUTPUT_REQUIRED); } const outputFile = { ...context, tree, }; const pathWithoutExtension = outputPath.split('.').length > 1 ? outputPath.split('.').slice(0, -1).join('.') : outputPath; console.debug(EXPORTING_TO_YAML_FILE(pathWithoutExtension)); await (0, yaml_1.saveYamlFileAs)(outputFile, `${pathWithoutExtension}.yaml`); }; return { execute }; }; exports.ExportYaml = ExportYaml; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LXlhbWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaWYtcnVuL2J1aWx0aW5zL2V4cG9ydC15YW1sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGlEQUE2QztBQUU3QyxpREFBc0Q7QUFFdEQsc0NBQWtDO0FBSWxDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxHQUFHLGNBQU0sQ0FBQztBQUN2QyxNQUFNLEVBQUMsZUFBZSxFQUFFLHNCQUFzQixFQUFDLEdBQUcsZ0JBQU8sQ0FBQztBQUVuRCxNQUFNLFVBQVUsR0FBRyxHQUFHLEVBQUU7SUFDN0I7O09BRUc7SUFDSCxNQUFNLE9BQU8sR0FBRyxLQUFLLEVBQUUsSUFBUyxFQUFFLE9BQWdCLEVBQUUsVUFBa0IsRUFBRSxFQUFFO1FBQ3hFLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDZixNQUFNLElBQUkscUJBQXFCLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDbEQ7UUFFRCxNQUFNLFVBQVUsR0FBRztZQUNqQixHQUFHLE9BQU87WUFDVixJQUFJO1NBQ0wsQ0FBQztRQUNGLE1BQU0sb0JBQW9CLEdBQ3hCLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUM7WUFDOUIsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDOUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUVqQixPQUFPLENBQUMsS0FBSyxDQUFDLHNCQUFzQixDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztRQUU1RCxNQUFNLElBQUEscUJBQWMsRUFBQyxVQUFVLEVBQUUsR0FBRyxvQkFBb0IsT0FBTyxDQUFDLENBQUM7SUFDbkUsQ0FBQyxDQUFDO0lBRUYsT0FBTyxFQUFDLE9BQU8sRUFBQyxDQUFDO0FBQ25CLENBQUMsQ0FBQztBQXhCVyxRQUFBLFVBQVUsY0F3QnJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFUlJPUlN9IGZyb20gJ0Bncm5zZnQvaWYtY29yZS91dGlscyc7XG5cbmltcG9ydCB7c2F2ZVlhbWxGaWxlQXN9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlsL3lhbWwnO1xuXG5pbXBvcnQge1NUUklOR1N9IGZyb20gJy4uL2NvbmZpZyc7XG5cbmltcG9ydCB7Q29udGV4dH0gZnJvbSAnLi4vLi4vY29tbW9uL3R5cGVzL21hbmlmZXN0JztcblxuY29uc3Qge0V4aGF1c3RPdXRwdXRBcmdFcnJvcn0gPSBFUlJPUlM7XG5jb25zdCB7T1VUUFVUX1JFUVVJUkVELCBFWFBPUlRJTkdfVE9fWUFNTF9GSUxFfSA9IFNUUklOR1M7XG5cbmV4cG9ydCBjb25zdCBFeHBvcnRZYW1sID0gKCkgPT4ge1xuICAvKipcbiAgICogU2F2ZXMgb3V0cHV0IGZpbGUgaW4gWUFNTCBmb3JtYXQuXG4gICAqL1xuICBjb25zdCBleGVjdXRlID0gYXN5bmMgKHRyZWU6IGFueSwgY29udGV4dDogQ29udGV4dCwgb3V0cHV0UGF0aDogc3RyaW5nKSA9PiB7XG4gICAgaWYgKCFvdXRwdXRQYXRoKSB7XG4gICAgICB0aHJvdyBuZXcgRXhoYXVzdE91dHB1dEFyZ0Vycm9yKE9VVFBVVF9SRVFVSVJFRCk7XG4gICAgfVxuXG4gICAgY29uc3Qgb3V0cHV0RmlsZSA9IHtcbiAgICAgIC4uLmNvbnRleHQsXG4gICAgICB0cmVlLFxuICAgIH07XG4gICAgY29uc3QgcGF0aFdpdGhvdXRFeHRlbnNpb24gPVxuICAgICAgb3V0cHV0UGF0aC5zcGxpdCgnLicpLmxlbmd0aCA+IDFcbiAgICAgICAgPyBvdXRwdXRQYXRoLnNwbGl0KCcuJykuc2xpY2UoMCwgLTEpLmpvaW4oJy4nKVxuICAgICAgICA6IG91dHB1dFBhdGg7XG5cbiAgICBjb25zb2xlLmRlYnVnKEVYUE9SVElOR19UT19ZQU1MX0ZJTEUocGF0aFdpdGhvdXRFeHRlbnNpb24pKTtcblxuICAgIGF3YWl0IHNhdmVZYW1sRmlsZUFzKG91dHB1dEZpbGUsIGAke3BhdGhXaXRob3V0RXh0ZW5zaW9ufS55YW1sYCk7XG4gIH07XG5cbiAgcmV0dXJuIHtleGVjdXRlfTtcbn07XG4iXX0=