salesforcedx-templates
Version:
Salesforce CLI scaffolding commands for different types of Force.com metadata
71 lines • 3.04 kB
JavaScript
;
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 lightningEventGenerator_1 = require("../../../../generators/lightningEventGenerator");
const utils_1 = require("../../../../utils");
const lightningEventFileSuffix = /.evt$/;
const BUNDLE_TYPE = utils_1.MessageUtil.get('Event');
class LightningEvent extends utils_1.TemplateCommand {
run() {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
utils_1.CreateUtil.checkInputs(this.flags.eventname);
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 (!this.flags.internal && !fileparts.includes('aura')) {
throw new Error(utils_1.MessageUtil.get('MissingAuraDir'));
}
return this.runGenerator(lightningEventGenerator_1.default);
});
}
}
LightningEvent.description = utils_1.MessageUtil.buildDescription('LightningDescription', true, [BUNDLE_TYPE]);
LightningEvent.examples = [
'$ sfdx force:lightning:app:create -n myevent',
'$ sfdx force:lightning:event:create -n myevent -d aura'
];
LightningEvent.help = utils_1.MessageUtil.buildHelpText(LightningEvent.examples, true);
LightningEvent.longDescription = utils_1.MessageUtil.get('LightningLongDescription', [
BUNDLE_TYPE
]);
LightningEvent.flagsConfig = {
eventname: 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: 'DefaultLightningEvt',
options: utils_1.CreateUtil.getCommandTemplatesForFiletype(lightningEventFileSuffix, 'lightningevent')
}),
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 = LightningEvent;
//# sourceMappingURL=create.js.map