UNPKG

salesforcedx-templates

Version:

Salesforce CLI scaffolding commands for different types of Force.com metadata

71 lines 3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); /* * Copyright (c) 2019, salesforce.com, inc. * All rights reserved. * Licensed under the BSD 3-Clause license. * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ const command_1 = require("@salesforce/command"); const path = require("path"); const lightningAppGenerator_1 = require("../../../../generators/lightningAppGenerator"); const utils_1 = require("../../../../utils"); const lightningAppFileSuffix = /.app$/; const BUNDLE_TYPE = utils_1.MessageUtil.get('App'); class LightningApp extends utils_1.TemplateCommand { run() { return tslib_1.__awaiter(this, void 0, void 0, function* () { utils_1.CreateUtil.checkInputs(this.flags.appname); utils_1.CreateUtil.checkInputs(this.flags.template); const fileparts = path.resolve(this.flags.outputdir).split(path.sep); // tslint:disable-next-line:no-unused-expression if (!fileparts.includes('aura') && !this.flags.internal) { throw new Error(utils_1.MessageUtil.get('MissingAuraDir')); } return this.runGenerator(lightningAppGenerator_1.default); }); } } LightningApp.description = utils_1.MessageUtil.buildDescription('LightningDescription', true, [BUNDLE_TYPE]); LightningApp.examples = [ '$ sfdx force:lightning:app:create -n myapp', '$ sfdx force:lightning:app:create -n myapp -d aura' ]; LightningApp.help = utils_1.MessageUtil.buildHelpText(LightningApp.examples, true); LightningApp.longDescription = utils_1.MessageUtil.get('LightningLongDescription', [ BUNDLE_TYPE ]); LightningApp.flagsConfig = { appname: command_1.flags.string({ char: 'n', description: utils_1.MessageUtil.get('LightningNameFlagDescription', [ BUNDLE_TYPE ]), longDescription: utils_1.MessageUtil.get('LightningNameFlagLongDescription', [ BUNDLE_TYPE ]), required: true }), template: command_1.flags.string({ char: 't', description: utils_1.MessageUtil.get('TemplateFlagDescription'), longDescription: utils_1.MessageUtil.get('TemplateFlagLongDescription'), default: 'DefaultLightningApp', options: utils_1.CreateUtil.getCommandTemplatesForFiletype(lightningAppFileSuffix, 'lightningapp') }), outputdir: command_1.flags.string({ char: 'd', description: utils_1.MessageUtil.get('OutputDirFlagDescription'), longDescription: utils_1.MessageUtil.get('OutputDirFlagLongDescription'), default: process.cwd() }), apiversion: command_1.flags.builtin(), internal: command_1.flags.boolean({ char: 'i', description: utils_1.MessageUtil.get('LightningInternalFlagDescription'), hidden: true }) }; exports.default = LightningApp; //# sourceMappingURL=create.js.map