33 lines
1.0 KiB
Markdown
33 lines
1.0 KiB
Markdown
|
# Schematics for Bazel
|
||
|
|
||
|
## Development notes
|
||
|
|
||
|
To test any local changes, run
|
||
|
|
||
|
```shell
|
||
|
bazel build //packages/bazel:npm_package
|
||
|
```
|
||
|
|
||
|
then `cd` to the npm package in the `dist` folder and run `yarn link`.
|
||
|
Next run `yarn link` again in the directory where the `ng` command is invoked.
|
||
|
Make sure the `ng` command is local, and not the global installation.
|
||
|
|
||
|
## Generate .d.ts file from JSON schema
|
||
|
|
||
|
The script to generate `.d.ts` file is located in the
|
||
|
[Angular CLI](https://github.com/angular/angular-cli) repo. Make sure
|
||
|
the CLI repository is checked out on your local machine.
|
||
|
|
||
|
Then, in the CLI repository, run the following command
|
||
|
|
||
|
```shell
|
||
|
bazel run //tools:quicktype_runner -- \
|
||
|
~/Documents/GitHub/angular/packages/bazel/src/schematics/ng-new/schema.json \
|
||
|
~/Documents/GitHub/angular/packages/bazel/src/schematics/ng-new/schema.d.ts
|
||
|
```
|
||
|
|
||
|
## TODOs
|
||
|
|
||
|
1. Make the `ts_json_schema` rule re-usable and portable.
|
||
|
2. Add comments in BUILD files. See discussion [here](https://github.com/angular/angular/pull/26971#discussion_r231325683).
|