UNPKG

@salesforce/templates

Version:

Salesforce JS library for templates

41 lines 1.9 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 path = require("path"); const i18n_1 = require("../i18n"); const utils_1 = require("../utils"); const baseGenerator_1 = require("./baseGenerator"); class LightningInterfaceGenerator extends baseGenerator_1.BaseGenerator { constructor(options) { super(options); } validateOptions() { utils_1.CreateUtil.checkInputs(this.options.interfacename); utils_1.CreateUtil.checkInputs(this.options.template); const fileparts = path.resolve(this.outputdir).split(path.sep); if (!this.options.internal && !fileparts.includes('aura')) { throw new Error(i18n_1.nls.localize('MissingAuraDir')); } } generate() { return tslib_1.__awaiter(this, void 0, void 0, function* () { const { template, interfacename, internal } = this.options; this.sourceRootWithPartialPath('lightninginterface'); if (!internal) { yield this.render(this.templatePath('_auradefinitionbundle.intf-meta.xml'), this.destinationPath(path.join(this.outputdir, interfacename, `${interfacename}.intf-meta.xml`)), { apiVersion: this.apiversion, description: i18n_1.nls.localize('LightningInterfaceBundle'), }); } yield this.render(this.templatePath(`${template}.intf`), this.destinationPath(path.join(this.outputdir, interfacename, `${interfacename}.intf`)), {}); }); } } exports.default = LightningInterfaceGenerator; //# sourceMappingURL=lightningInterfaceGenerator.js.map