tree: 15df668bf399ba37ec86ae2dcec44f23e34e8ee5 [path history] [tgz]
  1. .editorconfig
  2. .gitignore
  3. BUILD
  5. angular.json
  6. e2e/
  8. package-lock.json
  9. package.json
  10. projects/
  11. src/
  12. tsconfig.json
  13. tslint.json


This project separates out the Framework part of the ONOS GUI2 project in to a separate Angular library

It is separate to the main ONOS GUI2 project which is in ~/onos/web/gui2

The reason this has been separated out in to a separate library is to allow external applications e.g. YangGUI to use it, without bringing along the whole of GUI 2

This project was generated with Angular CLI version 7.0.4.

A couple of good articles on the creation and use of libraries in Angular 7 is given in

The Angular Library Series - Creating a Library with the Angular CLI


The Angular Library Series - Building and Packaging

The Bazel build of this library handles the building and packaging of the library so that other projects and libraries can use it.

Development server

To build the library project using Angular CLI run 'ng build --prod gui2-fw-lib' inside the ~/onos/web/gui2-fw-lib folder

To make the library in to an NPM package use 'npm pack' inside the dist/gui2-fw-lib folder

To build the app that surrounds the library run 'ng build'. This app is not part of the ONOS GUI and is there as a placeholder for testing the library

Run ng serve for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files. NOTE If you make changes to files in the library, the app will not pick them up until you build the library again

Code scaffolding

Run ng generate component component-name --project=gui2-fw-lib to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.


Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Run ng e2e to execute the end-to-end tests via Protractor.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.