UNPKG

@grnsft/if

Version:

Impact Framework

48 lines 5.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseIfEnvArgs = void 0; const ts_command_line_args_1 = require("ts-command-line-args"); const utils_1 = require("@grnsft/if-core/utils"); const fs_1 = require("../../common/util/fs"); const helpers_1 = require("../../common/util/helpers"); const yaml_1 = require("../../common/util/yaml"); const config_1 = require("../config"); const config_2 = require("../../common/config"); const { ParseCliParamsError, CliSourceFileError } = utils_1.ERRORS; const { ARGS, HELP } = config_1.CONFIG; const { MANIFEST_NOT_FOUND, SOURCE_IS_NOT_YAML } = config_2.STRINGS; /** * Parses `if-env` process arguments. */ const validateAndParseIfEnvArgs = () => { try { return (0, ts_command_line_args_1.parse)(ARGS, HELP); } catch (error) { if (error instanceof Error) { console.log(error.message); (0, helpers_1.runHelpCommand)('if-env'); } throw error; } }; /** * Checks if the `manifest` command is provided and it is valid manifest file. */ const parseIfEnvArgs = async () => { const { manifest, install, cwd } = validateAndParseIfEnvArgs(); if (manifest) { const response = (0, helpers_1.prependFullFilePath)(manifest); const isManifestFileExists = await (0, fs_1.isFileExists)(response); if (!isManifestFileExists) { throw new ParseCliParamsError(MANIFEST_NOT_FOUND); } if ((0, yaml_1.checkIfFileIsYaml)(manifest)) { return { manifest: response, install, cwd }; } throw new CliSourceFileError(SOURCE_IS_NOT_YAML); } return { install, cwd }; }; exports.parseIfEnvArgs = parseIfEnvArgs; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pZi1lbnYvdXRpbC9hcmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtEQUEyQztBQUUzQyxpREFBNkM7QUFFN0MsNkNBQWtEO0FBQ2xELHVEQUE4RTtBQUM5RSxpREFBeUQ7QUFFekQsc0NBQWlDO0FBQ2pDLGdEQUE4RDtBQUk5RCxNQUFNLEVBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUMsR0FBRyxjQUFNLENBQUM7QUFDekQsTUFBTSxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUMsR0FBRyxlQUFNLENBQUM7QUFDNUIsTUFBTSxFQUFDLGtCQUFrQixFQUFFLGtCQUFrQixFQUFDLEdBQUcsZ0JBQWMsQ0FBQztBQUVoRTs7R0FFRztBQUNILE1BQU0seUJBQXlCLEdBQUcsR0FBRyxFQUFFO0lBQ3JDLElBQUk7UUFDRixPQUFPLElBQUEsNEJBQUssRUFBWSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7S0FDckM7SUFBQyxPQUFPLEtBQUssRUFBRTtRQUNkLElBQUksS0FBSyxZQUFZLEtBQUssRUFBRTtZQUMxQixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUUzQixJQUFBLHdCQUFjLEVBQUMsUUFBUSxDQUFDLENBQUM7U0FDMUI7UUFFRCxNQUFNLEtBQUssQ0FBQztLQUNiO0FBQ0gsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSSxNQUFNLGNBQWMsR0FBRyxLQUFLLElBQUksRUFBRTtJQUN2QyxNQUFNLEVBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUMsR0FBRyx5QkFBeUIsRUFBRSxDQUFDO0lBRTdELElBQUksUUFBUSxFQUFFO1FBQ1osTUFBTSxRQUFRLEdBQUcsSUFBQSw2QkFBbUIsRUFBQyxRQUFRLENBQUMsQ0FBQztRQUMvQyxNQUFNLG9CQUFvQixHQUFHLE1BQU0sSUFBQSxpQkFBWSxFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTFELElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUN6QixNQUFNLElBQUksbUJBQW1CLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUNuRDtRQUVELElBQUksSUFBQSx3QkFBaUIsRUFBQyxRQUFRLENBQUMsRUFBRTtZQUMvQixPQUFPLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFDLENBQUM7U0FDM0M7UUFFRCxNQUFNLElBQUksa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQUNsRDtJQUVELE9BQU8sRUFBQyxPQUFPLEVBQUUsR0FBRyxFQUFDLENBQUM7QUFDeEIsQ0FBQyxDQUFDO0FBbkJXLFFBQUEsY0FBYyxrQkFtQnpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtwYXJzZX0gZnJvbSAndHMtY29tbWFuZC1saW5lLWFyZ3MnO1xuXG5pbXBvcnQge0VSUk9SU30gZnJvbSAnQGdybnNmdC9pZi1jb3JlL3V0aWxzJztcblxuaW1wb3J0IHtpc0ZpbGVFeGlzdHN9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlsL2ZzJztcbmltcG9ydCB7cHJlcGVuZEZ1bGxGaWxlUGF0aCwgcnVuSGVscENvbW1hbmR9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlsL2hlbHBlcnMnO1xuaW1wb3J0IHtjaGVja0lmRmlsZUlzWWFtbH0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWwveWFtbCc7XG5cbmltcG9ydCB7Q09ORklHfSBmcm9tICcuLi9jb25maWcnO1xuaW1wb3J0IHtTVFJJTkdTIGFzIENPTU1PTl9TVFJJTkdTfSBmcm9tICcuLi8uLi9jb21tb24vY29uZmlnJztcblxuaW1wb3J0IHtJRkVudkFyZ3N9IGZyb20gJy4uL3R5cGVzL3Byb2Nlc3MtYXJncyc7XG5cbmNvbnN0IHtQYXJzZUNsaVBhcmFtc0Vycm9yLCBDbGlTb3VyY2VGaWxlRXJyb3J9ID0gRVJST1JTO1xuY29uc3Qge0FSR1MsIEhFTFB9ID0gQ09ORklHO1xuY29uc3Qge01BTklGRVNUX05PVF9GT1VORCwgU09VUkNFX0lTX05PVF9ZQU1MfSA9IENPTU1PTl9TVFJJTkdTO1xuXG4vKipcbiAqIFBhcnNlcyBgaWYtZW52YCBwcm9jZXNzIGFyZ3VtZW50cy5cbiAqL1xuY29uc3QgdmFsaWRhdGVBbmRQYXJzZUlmRW52QXJncyA9ICgpID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gcGFyc2U8SUZFbnZBcmdzPihBUkdTLCBIRUxQKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgY29uc29sZS5sb2coZXJyb3IubWVzc2FnZSk7XG5cbiAgICAgIHJ1bkhlbHBDb21tYW5kKCdpZi1lbnYnKTtcbiAgICB9XG5cbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGBtYW5pZmVzdGAgY29tbWFuZCBpcyBwcm92aWRlZCBhbmQgaXQgaXMgdmFsaWQgbWFuaWZlc3QgZmlsZS5cbiAqL1xuZXhwb3J0IGNvbnN0IHBhcnNlSWZFbnZBcmdzID0gYXN5bmMgKCkgPT4ge1xuICBjb25zdCB7bWFuaWZlc3QsIGluc3RhbGwsIGN3ZH0gPSB2YWxpZGF0ZUFuZFBhcnNlSWZFbnZBcmdzKCk7XG5cbiAgaWYgKG1hbmlmZXN0KSB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBwcmVwZW5kRnVsbEZpbGVQYXRoKG1hbmlmZXN0KTtcbiAgICBjb25zdCBpc01hbmlmZXN0RmlsZUV4aXN0cyA9IGF3YWl0IGlzRmlsZUV4aXN0cyhyZXNwb25zZSk7XG5cbiAgICBpZiAoIWlzTWFuaWZlc3RGaWxlRXhpc3RzKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VDbGlQYXJhbXNFcnJvcihNQU5JRkVTVF9OT1RfRk9VTkQpO1xuICAgIH1cblxuICAgIGlmIChjaGVja0lmRmlsZUlzWWFtbChtYW5pZmVzdCkpIHtcbiAgICAgIHJldHVybiB7bWFuaWZlc3Q6IHJlc3BvbnNlLCBpbnN0YWxsLCBjd2R9O1xuICAgIH1cblxuICAgIHRocm93IG5ldyBDbGlTb3VyY2VGaWxlRXJyb3IoU09VUkNFX0lTX05PVF9ZQU1MKTtcbiAgfVxuXG4gIHJldHVybiB7aW5zdGFsbCwgY3dkfTtcbn07XG4iXX0=