ember-cli/ember-cli

View on GitHub
blueprints/http-mock/index.js

Summary

Maintainability
A
1 hr
Test Coverage
A
100%
'use strict';

const Blueprint = require('../../lib/models/blueprint');
const isPackageMissing = require('ember-cli-is-package-missing');

module.exports = {
  description: 'Generates a mock api endpoint in /api prefix.',

  anonymousOptions: ['endpoint-path'],

  locals(options) {
    return {
      path: `/${options.entity.name.replace(/^\//, '')}`,
    };
  },

  beforeInstall(options) {
    let serverBlueprint = Blueprint.lookup('server', {
      ui: this.ui,
      project: this.project,
    });

    return serverBlueprint.install(options);
  },

  afterInstall(options) {
    if (!options.dryRun && isPackageMissing(this, 'express')) {
      return this.addPackagesToProject([{ name: 'express', target: '^4.8.5' }]);
    }
  },
};