init
This commit is contained in:
		@@ -89,6 +89,7 @@
 | 
				
			|||||||
            "polyfills": "src/polyfills.ts",
 | 
					            "polyfills": "src/polyfills.ts",
 | 
				
			||||||
            "tsConfig": "tsconfig.spec.json",
 | 
					            "tsConfig": "tsconfig.spec.json",
 | 
				
			||||||
            "karmaConfig": "karma.conf.js",
 | 
					            "karmaConfig": "karma.conf.js",
 | 
				
			||||||
 | 
					            "codeCoverage": true,
 | 
				
			||||||
            "assets": [
 | 
					            "assets": [
 | 
				
			||||||
              "src/favicon.ico",
 | 
					              "src/favicon.ico",
 | 
				
			||||||
              "src/assets"
 | 
					              "src/assets"
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										43
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										43
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							@@ -1863,6 +1863,49 @@
 | 
				
			|||||||
        "to-fast-properties": "^2.0.0"
 | 
					        "to-fast-properties": "^2.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "@hapi/address": {
 | 
				
			||||||
 | 
					      "version": "4.0.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/@hapi/address/-/address-4.0.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-0oEP5UiyV4f3d6cBL8F3Z5S7iWSX39Knnl0lY8i+6gfmmIBj44JCBNtcMgwyS+5v7j3VYavNay0NFHDS+UGQcw==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "@hapi/hoek": "^9.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "@hapi/formula": {
 | 
				
			||||||
 | 
					      "version": "2.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/@hapi/formula/-/formula-2.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-V87P8fv7PI0LH7LiVi8Lkf3x+KCO7pQozXRssAHNXXL9L1K+uyu4XypLXwxqVDKgyQai6qj3/KteNlrqDx4W5A=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "@hapi/hoek": {
 | 
				
			||||||
 | 
					      "version": "9.0.4",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.0.4.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-EwaJS7RjoXUZ2cXXKZZxZqieGtc7RbvQhUy8FwDoMQtxWVi14tFjeFCYPZAM1mBCpOpiBpyaZbb9NeHc7eGKgw=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "@hapi/joi": {
 | 
				
			||||||
 | 
					      "version": "17.1.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-17.1.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-p4DKeZAoeZW4g3u7ZeRo+vCDuSDgSvtsB/NpfjXEHTUjSeINAi/RrVOWiVQ1isaoLzMvFEhe8n5065mQq1AdQg==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "@hapi/address": "^4.0.1",
 | 
				
			||||||
 | 
					        "@hapi/formula": "^2.0.0",
 | 
				
			||||||
 | 
					        "@hapi/hoek": "^9.0.0",
 | 
				
			||||||
 | 
					        "@hapi/pinpoint": "^2.0.0",
 | 
				
			||||||
 | 
					        "@hapi/topo": "^5.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "@hapi/pinpoint": {
 | 
				
			||||||
 | 
					      "version": "2.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/@hapi/pinpoint/-/pinpoint-2.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-vzXR5MY7n4XeIvLpfl3HtE3coZYO4raKXW766R6DZw/6aLqR26iuZ109K7a0NtF2Db0jxqh7xz2AxkUwpUFybw=="
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    "@hapi/topo": {
 | 
				
			||||||
 | 
					      "version": "5.0.0",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.0.0.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-tFJlT47db0kMqVm3H4nQYgn6Pwg10GTZHb1pwmSiv1K4ks6drQOtfEF5ZnPjkvC+y4/bUPHK+bc87QvLcL+WMw==",
 | 
				
			||||||
 | 
					      "requires": {
 | 
				
			||||||
 | 
					        "@hapi/hoek": "^9.0.0"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "@inst-iot/bosch-angular-ui-components": {
 | 
					    "@inst-iot/bosch-angular-ui-components": {
 | 
				
			||||||
      "version": "0.5.30",
 | 
					      "version": "0.5.30",
 | 
				
			||||||
      "resolved": "https://rb-artifactory.bosch.com:443/artifactory/api/npm/iot-insights-release-local/@inst-iot/bosch-angular-ui-components/-/@inst-iot/bosch-angular-ui-components-0.5.30.tgz",
 | 
					      "resolved": "https://rb-artifactory.bosch.com:443/artifactory/api/npm/iot-insights-release-local/@inst-iot/bosch-angular-ui-components/-/@inst-iot/bosch-angular-ui-components-0.5.30.tgz",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,11 +3,12 @@
 | 
				
			|||||||
  "version": "0.0.0",
 | 
					  "version": "0.0.0",
 | 
				
			||||||
  "scripts": {
 | 
					  "scripts": {
 | 
				
			||||||
    "ng": "ng",
 | 
					    "ng": "ng",
 | 
				
			||||||
    "start": "ng serve",
 | 
					    "start": "ng serve -o",
 | 
				
			||||||
    "build": "ng build",
 | 
					    "build": "ng build",
 | 
				
			||||||
    "test": "ng test",
 | 
					    "test": "ng test",
 | 
				
			||||||
    "lint": "ng lint",
 | 
					    "lint": "ng lint",
 | 
				
			||||||
    "e2e": "ng e2e"
 | 
					    "e2e": "ng e2e",
 | 
				
			||||||
 | 
					    "coverage": "ng test --no-watch --code-coverage"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "private": true,
 | 
					  "private": true,
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
@@ -19,6 +20,7 @@
 | 
				
			|||||||
    "@angular/platform-browser": "~8.2.14",
 | 
					    "@angular/platform-browser": "~8.2.14",
 | 
				
			||||||
    "@angular/platform-browser-dynamic": "~8.2.14",
 | 
					    "@angular/platform-browser-dynamic": "~8.2.14",
 | 
				
			||||||
    "@angular/router": "~8.2.14",
 | 
					    "@angular/router": "~8.2.14",
 | 
				
			||||||
 | 
					    "@hapi/joi": "^17.1.1",
 | 
				
			||||||
    "@inst-iot/bosch-angular-ui-components": "^0.5.30",
 | 
					    "@inst-iot/bosch-angular-ui-components": "^0.5.30",
 | 
				
			||||||
    "flatpickr": "^4.6.3",
 | 
					    "flatpickr": "^4.6.3",
 | 
				
			||||||
    "rxjs": "~6.4.0",
 | 
					    "rxjs": "~6.4.0",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,8 +1,11 @@
 | 
				
			|||||||
import { NgModule } from '@angular/core';
 | 
					import { NgModule } from '@angular/core';
 | 
				
			||||||
import { Routes, RouterModule } from '@angular/router';
 | 
					import { Routes, RouterModule } from '@angular/router';
 | 
				
			||||||
 | 
					import {HomeComponent} from './home/home.component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const routes: Routes = [];
 | 
					const routes: Routes = [
 | 
				
			||||||
 | 
					  {path: '', component: HomeComponent}
 | 
				
			||||||
 | 
					];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@NgModule({
 | 
					@NgModule({
 | 
				
			||||||
  imports: [RouterModule.forRoot(routes)],
 | 
					  imports: [RouterModule.forRoot(routes)],
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -4,3 +4,7 @@
 | 
				
			|||||||
  </nav>
 | 
					  </nav>
 | 
				
			||||||
  <div *rbSubBrandHeader>Digital Fingerprint of Plastics</div>
 | 
					  <div *rbSubBrandHeader>Digital Fingerprint of Plastics</div>
 | 
				
			||||||
</rb-full-header>
 | 
					</rb-full-header>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<div class="container">
 | 
				
			||||||
 | 
					  <router-outlet></router-outlet>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -4,15 +4,21 @@ import { NgModule } from '@angular/core';
 | 
				
			|||||||
import { AppRoutingModule } from './app-routing.module';
 | 
					import { AppRoutingModule } from './app-routing.module';
 | 
				
			||||||
import { AppComponent } from './app.component';
 | 
					import { AppComponent } from './app.component';
 | 
				
			||||||
import {RbUiComponentsModule} from '@inst-iot/bosch-angular-ui-components';
 | 
					import {RbUiComponentsModule} from '@inst-iot/bosch-angular-ui-components';
 | 
				
			||||||
 | 
					import { LoginComponent } from './login/login.component';
 | 
				
			||||||
 | 
					import { HomeComponent } from './home/home.component';
 | 
				
			||||||
 | 
					import {FormsModule} from '@angular/forms';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@NgModule({
 | 
					@NgModule({
 | 
				
			||||||
  declarations: [
 | 
					  declarations: [
 | 
				
			||||||
    AppComponent
 | 
					    AppComponent,
 | 
				
			||||||
 | 
					    LoginComponent,
 | 
				
			||||||
 | 
					    HomeComponent
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  imports: [
 | 
					  imports: [
 | 
				
			||||||
    BrowserModule,
 | 
					    BrowserModule,
 | 
				
			||||||
    AppRoutingModule,
 | 
					    AppRoutingModule,
 | 
				
			||||||
    RbUiComponentsModule
 | 
					    RbUiComponentsModule,
 | 
				
			||||||
 | 
					    FormsModule
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  providers: [],
 | 
					  providers: [],
 | 
				
			||||||
  bootstrap: [AppComponent]
 | 
					  bootstrap: [AppComponent]
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										1
									
								
								src/app/home/home.component.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								src/app/home/home.component.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					<app-login></app-login>
 | 
				
			||||||
							
								
								
									
										0
									
								
								src/app/home/home.component.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								src/app/home/home.component.scss
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										25
									
								
								src/app/home/home.component.spec.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								src/app/home/home.component.spec.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					import { async, ComponentFixture, TestBed } from '@angular/core/testing';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { HomeComponent } from './home.component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					describe('HomeComponent', () => {
 | 
				
			||||||
 | 
					  let component: HomeComponent;
 | 
				
			||||||
 | 
					  let fixture: ComponentFixture<HomeComponent>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(async(() => {
 | 
				
			||||||
 | 
					    TestBed.configureTestingModule({
 | 
				
			||||||
 | 
					      declarations: [ HomeComponent ]
 | 
				
			||||||
 | 
					    })
 | 
				
			||||||
 | 
					    .compileComponents();
 | 
				
			||||||
 | 
					  }));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(() => {
 | 
				
			||||||
 | 
					    fixture = TestBed.createComponent(HomeComponent);
 | 
				
			||||||
 | 
					    component = fixture.componentInstance;
 | 
				
			||||||
 | 
					    fixture.detectChanges();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it('should create', () => {
 | 
				
			||||||
 | 
					    expect(component).toBeTruthy();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
							
								
								
									
										15
									
								
								src/app/home/home.component.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								src/app/home/home.component.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					import { Component, OnInit } from '@angular/core';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Component({
 | 
				
			||||||
 | 
					  selector: 'app-home',
 | 
				
			||||||
 | 
					  templateUrl: './home.component.html',
 | 
				
			||||||
 | 
					  styleUrls: ['./home.component.scss']
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					export class HomeComponent implements OnInit {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  constructor() { }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ngOnInit() {
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										10
									
								
								src/app/login/login.component.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								src/app/login/login.component.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					<div class="login-wrapper">
 | 
				
			||||||
 | 
					  <h2>Please log in</h2>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <rb-form-input name="username" label="username">
 | 
				
			||||||
 | 
					  </rb-form-input>
 | 
				
			||||||
 | 
					  <rb-form-input type="password" name="password" label="password">
 | 
				
			||||||
 | 
					  </rb-form-input>
 | 
				
			||||||
 | 
					  <button class="rb-btn rb-primary">Login</button>
 | 
				
			||||||
 | 
					  <span>{{message}}</span>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
							
								
								
									
										3
									
								
								src/app/login/login.component.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								src/app/login/login.component.scss
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					.login-wrapper {
 | 
				
			||||||
 | 
					  max-width: 220px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										25
									
								
								src/app/login/login.component.spec.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								src/app/login/login.component.spec.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					import { async, ComponentFixture, TestBed } from '@angular/core/testing';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { LoginComponent } from './login.component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					describe('LoginComponent', () => {
 | 
				
			||||||
 | 
					  let component: LoginComponent;
 | 
				
			||||||
 | 
					  let fixture: ComponentFixture<LoginComponent>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(async(() => {
 | 
				
			||||||
 | 
					    TestBed.configureTestingModule({
 | 
				
			||||||
 | 
					      declarations: [ LoginComponent ]
 | 
				
			||||||
 | 
					    })
 | 
				
			||||||
 | 
					    .compileComponents();
 | 
				
			||||||
 | 
					  }));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(() => {
 | 
				
			||||||
 | 
					    fixture = TestBed.createComponent(LoginComponent);
 | 
				
			||||||
 | 
					    component = fixture.componentInstance;
 | 
				
			||||||
 | 
					    fixture.detectChanges();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it('should create', () => {
 | 
				
			||||||
 | 
					    expect(component).toBeTruthy();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
							
								
								
									
										19
									
								
								src/app/login/login.component.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								src/app/login/login.component.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					import { Component, OnInit } from '@angular/core';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Component({
 | 
				
			||||||
 | 
					  selector: 'app-login',
 | 
				
			||||||
 | 
					  templateUrl: './login.component.html',
 | 
				
			||||||
 | 
					  styleUrls: ['./login.component.scss']
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					export class LoginComponent implements OnInit {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  message = '';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  constructor() { }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ngOnInit() {
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										12
									
								
								src/app/validation.service.spec.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								src/app/validation.service.spec.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					import { TestBed } from '@angular/core/testing';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { ValidationService } from './validation.service';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					describe('ValidationService', () => {
 | 
				
			||||||
 | 
					  beforeEach(() => TestBed.configureTestingModule({}));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it('should be created', () => {
 | 
				
			||||||
 | 
					    const service: ValidationService = TestBed.get(ValidationService);
 | 
				
			||||||
 | 
					    expect(service).toBeTruthy();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
							
								
								
									
										9
									
								
								src/app/validation.service.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								src/app/validation.service.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					import { Injectable } from '@angular/core';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Injectable({
 | 
				
			||||||
 | 
					  providedIn: 'root'
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					export class ValidationService {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  constructor() { }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -1,3 +1,17 @@
 | 
				
			|||||||
$font-path: "../node_modules/@inst-iot/bosch-angular-ui-components/assets/";
 | 
					$font-path: "../node_modules/@inst-iot/bosch-angular-ui-components/assets/";
 | 
				
			||||||
$rb-extended-breakpoints: false;  // whether to use extended breakpoints xxl and xxxl
 | 
					$rb-extended-breakpoints: false;  // whether to use extended breakpoints xxl and xxxl
 | 
				
			||||||
@import "~@inst-iot/bosch-angular-ui-components/styles/global.scss";
 | 
					@import "~@inst-iot/bosch-angular-ui-components/styles/global.scss";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* {
 | 
				
			||||||
 | 
					  margin: 0;
 | 
				
			||||||
 | 
					  padding: 0;
 | 
				
			||||||
 | 
					  box-sizing: border-box;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					a, a:active, a:focus {
 | 
				
			||||||
 | 
					  outline: 0 !important;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					button::-moz-focus-inner {
 | 
				
			||||||
 | 
					  border: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user