diff --git a/addon/ng2/commands/generate.ts b/addon/ng2/commands/generate.ts new file mode 100644 index 000000000000..5e4369f651dc --- /dev/null +++ b/addon/ng2/commands/generate.ts @@ -0,0 +1,25 @@ +import * as EmberGenerateCommand from 'ember-cli/lib/commands/generate'; +import * as fs from 'fs'; +import * as path from 'path'; +import * as SilentError from 'silent-error'; + + +const GenerateCommand = EmberGenerateCommand.extend({ + name: 'generate', + + beforeRun: function(rawArgs) { + if (!rawArgs.length) { + return; + } + + if (!fs.existsSync(path.join(__dirname, '..', 'blueprints', rawArgs[0]))) { + SilentError.debugOrThrow('angular-cli/commands/generate', `Invalid blueprint: ${rawArgs[0]}`); + } + + return EmberGenerateCommand.prototype.beforeRun.apply(this, arguments); + } +}); + + +module.exports = GenerateCommand; +module.exports.overrideCore = true; diff --git a/addon/ng2/index.js b/addon/ng2/index.js index 6a34562e106f..b128441bf853 100644 --- a/addon/ng2/index.js +++ b/addon/ng2/index.js @@ -6,6 +6,7 @@ module.exports = { includedCommands: function() { return { 'new' : require('./commands/new'), + 'generate' : require('./commands/generate'), 'init' : require('./commands/init'), 'test' : require('./commands/test'), 'e2e' : require('./commands/e2e'),