UNPKG

nativescript

Version:

Command-line interface for building NativeScript projects

63 lines 2.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DeployOnDeviceCommand = void 0; const constants_1 = require("../constants"); const command_base_1 = require("./command-base"); const helpers_1 = require("../common/helpers"); const yok_1 = require("../common/yok"); class DeployOnDeviceCommand extends command_base_1.ValidatePlatformCommandBase { constructor($platformValidationService, $platformCommandParameter, $options, $projectData, $errors, $mobileHelper, $platformsDataService, $deployCommandHelper, $migrateController) { super($options, $platformsDataService, $platformValidationService, $projectData); this.$platformCommandParameter = $platformCommandParameter; this.$errors = $errors; this.$mobileHelper = $mobileHelper; this.$deployCommandHelper = $deployCommandHelper; this.$migrateController = $migrateController; this.allowedParameters = []; this.dashedOptions = { watch: { type: "boolean" /* OptionType.Boolean */, default: false, hasSensitiveValue: false, }, hmr: { type: "boolean" /* OptionType.Boolean */, default: false, hasSensitiveValue: false }, }; this.$projectData.initializeProjectData(); } async execute(args) { const platform = args[0]; await this.$deployCommandHelper.deploy(platform); } async canExecute(args) { const platform = args[0]; if (!this.$options.force) { await this.$migrateController.validate({ projectDir: this.$projectData.projectDir, platforms: [platform], }); } if (!args || !args.length || args.length > 1) { return false; } if (!(await this.$platformCommandParameter.validate(platform))) { return false; } if (this.$mobileHelper.isAndroidPlatform(platform) && (this.$options.release || this.$options.aab) && !(0, helpers_1.hasValidAndroidSigning)(this.$options)) { if (this.$options.release) { this.$errors.failWithHelp(constants_1.ANDROID_RELEASE_BUILD_ERROR_MESSAGE); } else { this.$errors.failWithHelp(constants_1.ANDROID_APP_BUNDLE_SIGNING_ERROR_MESSAGE); } } const result = await super.canExecuteCommandBase(platform, { validateOptions: true, }); return result; } } exports.DeployOnDeviceCommand = DeployOnDeviceCommand; yok_1.injector.registerCommand("deploy", DeployOnDeviceCommand); //# sourceMappingURL=deploy.js.map