mirror of
https://github.com/angular/angular-cli.git
synced 2025-05-19 04:26:01 +08:00
fix(@angular/cli): show a nicer error if packages does not support schematics
Does not show a better error if there are schematics but ng-add isnt found. That will simply show "schematics ng-add not found" or something alike, which is fine here. fixes #10467
This commit is contained in:
parent
0fc72bbcd4
commit
a47676bd8a
18
package-lock.json
generated
18
package-lock.json
generated
@ -5,14 +5,14 @@
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
"@angular-devkit/architect": {
|
||||
"version": "github:angular/angular-devkit-architect-builds#02f2b0de50864f467b6aa9cfdb3d4de5e15678d8",
|
||||
"version": "github:angular/angular-devkit-architect-builds#74d483c56722413ba0244924419207fe992c32ca",
|
||||
"requires": {
|
||||
"@angular-devkit/core": "github:angular/angular-devkit-core-builds#4249c56ddd026599ec4800bcf2dd27df8345dbeb",
|
||||
"@angular-devkit/core": "github:angular/angular-devkit-core-builds#e23d120163747de5326fb90b553abdb42dbc85f4",
|
||||
"rxjs": "6.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@angular-devkit/core": {
|
||||
"version": "github:angular/angular-devkit-core-builds#4249c56ddd026599ec4800bcf2dd27df8345dbeb",
|
||||
"version": "github:angular/angular-devkit-core-builds#e23d120163747de5326fb90b553abdb42dbc85f4",
|
||||
"requires": {
|
||||
"ajv": "6.4.0",
|
||||
"chokidar": "1.7.0",
|
||||
@ -23,7 +23,7 @@
|
||||
}
|
||||
},
|
||||
"@angular-devkit/core": {
|
||||
"version": "github:angular/angular-devkit-core-builds#4249c56ddd026599ec4800bcf2dd27df8345dbeb",
|
||||
"version": "github:angular/angular-devkit-core-builds#e23d120163747de5326fb90b553abdb42dbc85f4",
|
||||
"requires": {
|
||||
"ajv": "6.4.0",
|
||||
"chokidar": "1.7.0",
|
||||
@ -32,15 +32,15 @@
|
||||
}
|
||||
},
|
||||
"@angular-devkit/schematics": {
|
||||
"version": "github:angular/angular-devkit-schematics-builds#4144a9821d7016c427a41071d80af73ce9c447ba",
|
||||
"version": "github:angular/angular-devkit-schematics-builds#b63dcf777c08bc48788d9bd56fc993115b846748",
|
||||
"requires": {
|
||||
"@angular-devkit/core": "github:angular/angular-devkit-core-builds#4249c56ddd026599ec4800bcf2dd27df8345dbeb",
|
||||
"@angular-devkit/core": "github:angular/angular-devkit-core-builds#e23d120163747de5326fb90b553abdb42dbc85f4",
|
||||
"@ngtools/json-schema": "1.1.0",
|
||||
"rxjs": "6.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@angular-devkit/core": {
|
||||
"version": "github:angular/angular-devkit-core-builds#4249c56ddd026599ec4800bcf2dd27df8345dbeb",
|
||||
"version": "github:angular/angular-devkit-core-builds#e23d120163747de5326fb90b553abdb42dbc85f4",
|
||||
"requires": {
|
||||
"ajv": "6.4.0",
|
||||
"chokidar": "1.7.0",
|
||||
@ -1681,7 +1681,7 @@
|
||||
},
|
||||
"event-stream": {
|
||||
"version": "3.3.4",
|
||||
"resolved": "https://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz",
|
||||
"resolved": "http://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz",
|
||||
"integrity": "sha1-SrTJoPWlTbkzi0w02Gv86PSzVXE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@ -4096,7 +4096,7 @@
|
||||
},
|
||||
"onetime": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -1,3 +1,5 @@
|
||||
import { tags } from '@angular-devkit/core';
|
||||
import { NodePackageDoesNotSupportSchematics } from '@angular-devkit/schematics/tools';
|
||||
import chalk from 'chalk';
|
||||
import { CommandScope, Option } from '../models/command';
|
||||
import { parseOptions } from '../models/command-runner';
|
||||
@ -81,6 +83,17 @@ export default class AddCommand extends SchematicCommand {
|
||||
force: false,
|
||||
};
|
||||
|
||||
return await this.runSchematic(runOptions);
|
||||
try {
|
||||
return await this.runSchematic(runOptions);
|
||||
} catch (e) {
|
||||
if (e instanceof NodePackageDoesNotSupportSchematics) {
|
||||
throw new SilentError(tags.oneLine`
|
||||
The package that you are trying to add does not support schematics. You can try using
|
||||
a different version of the package or contact the package author to add ng-add support.
|
||||
`);
|
||||
}
|
||||
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user