UNPKG

adonis-mailbuilder

Version:
58 lines (57 loc) 2.32 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports, "__esModule", { value: true }); const path_1 = require("path"); const ace_1 = require("@adonisjs/ace"); // import { ConfigContract } from '@ioc:Adonis/Core/Config' const utils_1 = require("../src/utils"); /** * Generate MailBuilder class for new mailbuilder * * @version 1.0.0 * @adonis-version 5.0+ */ class MailBuilderMake extends ace_1.BaseCommand { constructor(app, kernel) { super(app, kernel); // this.config = app.container.use('Adonis/Core/Config') } /** * Execute command */ async run() { const templatePath = (0, path_1.join)(__dirname, `../templates/emailTemplate.txt`); if (!this.name) { throw new Error('Please provide name'); } try { this.generator .addFile(this.name, { pattern: 'pascalcase', form: 'singular' }) .apply({}) .stub(templatePath) .destinationDir((0, utils_1.getMailBuilderAppClassesPath)(this.application)) .useMustache() .appRoot(this.application.cliCwd || this.application.appRoot); await this.generator.run(); } catch (e) { console.error(e); this.logger.error('Failed to generate mailbuilder class with error ' + e.message); } } } // private config: ConfigContract MailBuilderMake.commandName = 'mailbuilder:make'; MailBuilderMake.description = 'Generate class for new mailbuilder'; MailBuilderMake.settings = { loadApp: true, }; exports.default = MailBuilderMake; __decorate([ ace_1.args.string({ description: 'Name of mailbuilder', required: true }) ], MailBuilderMake.prototype, "name", void 0);