@next-level-integration/nli-client-lib

The general structure of component: <nli-client [username]="username" [clients]="clients" (onLogout)="onLogout()" (onNextPage)="onNextPage($event)" >

Usage no npm install needed!

<script type="module">
  import nextLevelIntegrationNliClientLib from 'https://cdn.skypack.dev/@next-level-integration/nli-client-lib';
</script>

README

NliClientLib

The general structure of component:

<nli-client 
    [username]="username" [clients]="clients" 
    (onLogout)="onLogout()" (onNextPage)="onNextPage($event)" >
</nli-client>

alt text

Setup Steps:

  1. Add dependency in package.json under dependencies object: "nli-client-lib": "^2.0.1"

  2. 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.

  1. 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.

  2. 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

  3. 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

  1. 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);