import {Template} from '../Template' /** * Template that generates a new application unit class in app/units. */ const templateUnit: Template = { name: 'unit', fileSuffix: '.ts', description: 'Create a service unit that will start and stop with your application.', baseAppPath: ['units'], render(name: string) { return `import {Singleton, Inject, Unit, Logging} from '@extollo/lib' /** * ${name} Unit * --------------------------------------- * Put some description here. */ @Singleton() export class ${name} extends Unit { @Inject() protected readonly logging!: Logging public async up() { this.logging.info('${name} has started!') } public async down() { this.logging.info('${name} has stopped!') } } ` }, } export { templateUnit }