UNPKG

ask-cli-x

Version:

Alexa Skills Kit (ASK) Command Line Interfaces

65 lines (64 loc) 2.49 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createCommand = void 0; const abstract_command_1 = require("../abstract-command"); const messenger_1 = __importDefault(require("../../view/messenger")); const option_model_json_1 = __importDefault(require("../option-model.json")); const compiler_1 = __importDefault(require("./compiler")); const cli_error_1 = __importDefault(require("../../exceptions/cli-error")); const cli_file_not_found_error_1 = __importDefault(require("../../exceptions/cli-file-not-found-error")); const cli_warn_1 = __importDefault(require("../../exceptions/cli-warn")); const profile_helper_1 = __importDefault(require("../../utils/profile-helper")); /** * ASK Project compile command. * Compiles the project into raw artifacts. * Current scope: Alexa Conversations artifacts. */ class CompileCommand extends abstract_command_1.AbstractCommand { name() { return "compile"; } description() { return "compile the skill-package (alexa conversations only)."; } requiredOptions() { return []; } optionalOptions() { return ["profile", "skip-validation"]; } async handle(cmd) { let profile; try { profile = profile_helper_1.default.runtimeProfile(cmd.profile); } catch (err) { messenger_1.default.getInstance().error(err); throw err; } const askCompiler = new compiler_1.default({ profile }); try { await askCompiler.compile({ rootDir: process.cwd(), skipValidation: cmd.skipValidation }); } catch (err) { if (err instanceof cli_warn_1.default) { messenger_1.default.getInstance().warn(err.message); } else if (err instanceof cli_file_not_found_error_1.default) { messenger_1.default.getInstance().warn(err.message); } else if (err instanceof cli_error_1.default) { messenger_1.default.getInstance().error(err.message); } else { messenger_1.default.getInstance().error(err); } throw err; } } } exports.default = CompileCommand; exports.createCommand = new CompileCommand(option_model_json_1.default).createCommand();