NliClientLib
The general structure of component:
<nli-client
[username]="username" [clients]="clients"
(onLogout)="onLogout()" (onNextPage)="onNextPage($event)" >
</nli-client>
Setup Steps:
-
Add dependency in package.json under dependencies object:
"nli-client-lib": "^2.0.1"
-
Add CSS dependencies to main html file which by default is index.html:
<head>
...
<link rel="stylesheet" href="assets/offlines/material-icons.googleapis.css">
<link rel="stylesheet" href="assets/offlines/fonts.googleapis.css">
<link rel="stylesheet" href="assets/offlines/font-awesome.min.css">
...
</head>
This component uses material fonts and icons.
-
Apply material theme. create app-theme.scss
file and apply material theme. You should also add style
dependency in .angular-cli.json
file:
"styles": [
...
"app-theme.scss"
],
The sample app-theme.scss exists at the end of this file.
-
Run npm install in project folder (The home folder that package.json
exists):
npm install
This command downloads all dependencies including nli-client-lib. You can also download just this module with:
npm install nli-client-lib
-
Import client module to your project. In your main module (or module that you want use this component) that its default name is
app.module.ts
, import it:
import { LibModule as ClientModule} from '@next-level-integration/nli-client-lib';
...
@NgModule({
...
imports: [
...
NliClientModule
]
...
});
Usage example:
<nli-client style="height: 100%"
[username]="username" [clients]="clients"
(onLogout)="onLogout()" (onNextPage)="onNextPage($event)" >
</nli-client>
##Appendix
-
Sample app-theme.scss
@import '~@angular/material/theming';
// Plus imports for other components in your app.
// Include the base styles for Angular Material core. We include this here so that you only
// have to load a single css file for Angular Material in your app.
@include mat-core();
// Define the palettes for your theme using the Material Design palettes available in palette.scss
// (imported above). For each palette, you can optionally specify a default, lighter, and darker
// hue.
$app-primary: mat-palette($mat-blue);
$app-secondary: mat-palette($mat-blue);
$app-accent: mat-palette($mat-orange, A200, A100, A400);
// The warn palette is optional (defaults to red).
$app-warn: mat-palette($mat-red);
// Create the theme object (a Sass map containing all of the palettes).
$app-theme: mat-light-theme($app-primary, $app-accent, $app-warn);
// Include theme styles for core and each component used in your app.
// Alternatively, you can import and @include the theme mixins for each component
// that you are using.
@include angular-material-theme($app-theme);
//add this line for importing client scss theme:
@import '~@next-level-integration/nli-client-lib/lib/client/client.component.scss';
@include nli-client-material-theme($app-theme);