MitocGroup/recink

View on GitHub
bin/templates/component/src/component.js.twig

Summary

Maintainability
Test Coverage
'use strict';

const DependencyBasedComponent = require('recink/src/component/dependency-based-component');

/**
 * {{ name|title }} component
 */
class {{ name|capitalize }}Component extends DependencyBasedComponent {
  /**
   * @returns {string}
   */
  get name() {
    return '{{ name|lower }}';
  }
  
  /**
   * Add the components {{ name|title }} depends on
   *
   * @returns {string[]}
   */
  get dependencies() {
    return [];
  }
  
  /**
   * @param {Emitter} emitter
   * 
   * @returns {Promise}
   */
  run(emitter) {
    const name = this.container.get('name', 'World');
  
    this.logger.info(this.logger.chalk.yellow.bold(`Hello ${ name }!`));
  
    return Promise.resolve();
  }
}

module.exports = {{ name|capitalize }}Component;