first commit
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
import { AuthenticationModule } from './authentication.module';
|
||||
|
||||
|
||||
describe('PagesModule', () => {
|
||||
let authenticationModule: AuthenticationModule;
|
||||
|
||||
beforeEach(() => {
|
||||
authenticationModule = new AuthenticationModule();
|
||||
});
|
||||
|
||||
it('should create an instance', () => {
|
||||
expect(authenticationModule).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,76 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { LoginSimpleComponent } from './login-simple/login-simple.component';
|
||||
import { RouterModule, Router } from '@angular/router';
|
||||
import { LoginWithBgComponent } from './login-with-bg/login-with-bg.component';
|
||||
import { LoginWithBgImageComponent } from './login-with-bg-image/login-with-bg-image.component';
|
||||
import { LoginWithNavbarComponent } from './login-with-navbar/login-with-navbar.component';
|
||||
import { LoginAdvancedComponent } from './login-advanced/login-advanced.component';
|
||||
import { RegisterSimpleComponent } from './register-simple/register-simple.component';
|
||||
import { RegisterWithBgComponent } from './register-with-bg/register-with-bg.component';
|
||||
import { RegisterWithBgImageComponent } from './register-with-bg-image/register-with-bg-image.component';
|
||||
import { RegisterWithNavbarComponent } from './register-with-navbar/register-with-navbar.component';
|
||||
import { RegisterAdvancedComponent } from './register-advanced/register-advanced.component';
|
||||
import { UnlockUserComponent } from './unlock-user/unlock-user.component';
|
||||
import { RecoverPasswordComponent } from './recover-password/recover-password.component';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
RouterModule.forChild([
|
||||
{
|
||||
path: 'loginSimple',
|
||||
component: LoginSimpleComponent
|
||||
},
|
||||
{
|
||||
path: 'loginWithBg',
|
||||
component: LoginWithBgComponent
|
||||
},
|
||||
{
|
||||
path: 'loginWithBgImage',
|
||||
component: LoginWithBgImageComponent
|
||||
},
|
||||
{
|
||||
path: 'loginWithNavbar',
|
||||
component: LoginWithNavbarComponent
|
||||
},
|
||||
{
|
||||
path: 'loginAdvanced',
|
||||
component: LoginAdvancedComponent
|
||||
},
|
||||
{
|
||||
path: 'registerSimple',
|
||||
component: RegisterSimpleComponent
|
||||
},
|
||||
{
|
||||
path: 'registerWithBg',
|
||||
component: RegisterWithBgComponent
|
||||
},
|
||||
{
|
||||
path: 'registerWithBgImage',
|
||||
component: RegisterWithBgImageComponent
|
||||
},
|
||||
{
|
||||
path: 'registerWithNavbar',
|
||||
component: RegisterWithNavbarComponent
|
||||
},
|
||||
{
|
||||
path: 'registerAdvanced',
|
||||
component: RegisterAdvancedComponent
|
||||
},
|
||||
{
|
||||
path: 'unlockUser',
|
||||
component: UnlockUserComponent
|
||||
},
|
||||
{
|
||||
path: 'recoverPassword',
|
||||
component: RecoverPasswordComponent
|
||||
},
|
||||
])
|
||||
],
|
||||
declarations: [LoginSimpleComponent, LoginWithBgComponent, LoginWithBgImageComponent, LoginWithNavbarComponent, LoginAdvancedComponent,
|
||||
RegisterSimpleComponent, RegisterWithBgComponent, RegisterWithBgImageComponent, RegisterWithNavbarComponent,
|
||||
RegisterAdvancedComponent, UnlockUserComponent, RecoverPasswordComponent],
|
||||
exports: [RouterModule]
|
||||
})
|
||||
export class AuthenticationModule { }
|
||||
@@ -0,0 +1,7 @@
|
||||
html body {
|
||||
height: fit-content !important;
|
||||
}
|
||||
:host ::ng-deep .navbar-flexbox-container {
|
||||
top: -50px;
|
||||
position: relative;
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row mb-1">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row navbar-flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 m-0">
|
||||
<div class="card-header border-0">
|
||||
<div class="card-title text-center">
|
||||
<img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Login with
|
||||
Modern</span></h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="text" class="form-control input-lg" id="user-name" placeholder="Your Username"
|
||||
tabindex="1" required data-validation-required-message="Please enter your username.">
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-user"></i>
|
||||
</div>
|
||||
<div class="help-block font-small-3"></div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="password" class="form-control input-lg" id="password" placeholder="Enter Password"
|
||||
tabindex="2" required data-validation-required-message="Please enter valid passwords.">
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
<div class="help-block font-small-3"></div>
|
||||
</fieldset>
|
||||
<div class="form-group row">
|
||||
<div class="col-md-6 col-12 text-center text-md-left">
|
||||
<div class="custom-control custom-checkbox mb-1">
|
||||
<input type="checkbox" class="custom-control-input" name="remember-me" id="remember-me">
|
||||
<label class="custom-control-label" for="remember-me">Remember Me</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6 col-12 text-center text-md-right"><a
|
||||
[routerLink]="['/authentication/recoverPassword']" class="card-link">Forgot Password?</a>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" [routerLink]="['/dashboard/sales']" class="btn btn-danger btn-block btn-lg"><i class="feather ft-unlock"></i>
|
||||
Login</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer border-0">
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2 my-1"><span>New to
|
||||
Modern
|
||||
?</span></p>
|
||||
<a [routerLink]="['/authentication/registerAdvanced']" class="btn btn-info btn-block btn-lg mt-3"><i
|
||||
class="feather ft-user"></i>
|
||||
Register</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { LoginAdvancedComponent } from './login-advanced.component';
|
||||
|
||||
describe('LoginAdvancedComponent', () => {
|
||||
let component: LoginAdvancedComponent;
|
||||
let fixture: ComponentFixture<LoginAdvancedComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ LoginAdvancedComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(LoginAdvancedComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-login-advanced',
|
||||
templateUrl: './login-advanced.component.html',
|
||||
styleUrls: ['./login-advanced.component.css']
|
||||
})
|
||||
export class LoginAdvancedComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
:host ::ng-deep .fixed-navbar {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 m-0">
|
||||
<div class="card-header border-0">
|
||||
<div class="card-title text-center">
|
||||
<div class="p-1"><img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo"></div>
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Login with
|
||||
Modern</span></h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal form-simple">
|
||||
<div class="form-group position-relative has-icon-left mb-0">
|
||||
<input type="text" class="form-control" id="user-name" placeholder="Your Username" required>
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-user"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group position-relative has-icon-left">
|
||||
<input type="password" class="form-control" id="user-password" placeholder="Enter Password"
|
||||
required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-6 col-12 text-center text-sm-left">
|
||||
<div class="custom-control custom-checkbox mb-1">
|
||||
<input type="checkbox" class="custom-control-input" name="remember-me" id="remember-me">
|
||||
<label class="custom-control-label" for="remember-me">Remember Me</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-12 text-center text-sm-right"><a [routerLink]="['/authentication/recoverPassword']"
|
||||
class="card-link">Forgot Password?</a></div>
|
||||
</div>
|
||||
<button type="submit" [routerLink]="['/dashboard/sales']" class="btn btn-info btn-block"><i class="feather ft-unlock"></i>Login</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer">
|
||||
<div class="">
|
||||
<p class="float-xl-left text-center m-0"><a [routerLink]="['/authentication/recoverPassword']" class="card-link">Recover
|
||||
password</a></p>
|
||||
<p class="float-xl-right text-center m-0">New to Moden Admin? <a [routerLink]="['/authentication/registerSimple']"
|
||||
class="card-link">Sign Up</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { LoginSimpleComponent } from './login-simple.component';
|
||||
|
||||
describe('LoginSimpleComponent', () => {
|
||||
let component: LoginSimpleComponent;
|
||||
let fixture: ComponentFixture<LoginSimpleComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ LoginSimpleComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(LoginSimpleComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-login-simple',
|
||||
templateUrl: './login-simple.component.html',
|
||||
styleUrls: ['./login-simple.component.css']
|
||||
})
|
||||
export class LoginSimpleComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
html body {
|
||||
height: fit-content !important;
|
||||
}
|
||||
|
||||
.content-wrapper {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 px-1 py-1 m-0">
|
||||
<div class="card-header border-0">
|
||||
<div class="card-title text-center">
|
||||
<img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Easily
|
||||
Using</span></h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2 my-1"><span>OR Using
|
||||
Account Details</span></p>
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="text" class="form-control" id="user-name" placeholder="Your Username" required>
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-user"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="password" class="form-control" id="user-password" placeholder="Enter Password"
|
||||
required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-6 col-12 text-center text-sm-left pr-0">
|
||||
<div class="custom-control custom-checkbox mb-1">
|
||||
<input type="checkbox" class="custom-control-input" name="remember-me" id="remember-me">
|
||||
<label class="custom-control-label" for="remember-me">Remember Me</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-12 float-sm-left text-center text-sm-right"><a
|
||||
[routerLink]="['/authentication/recoverPassword']" class="card-link">Forgot Password?</a>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" [routerLink]="['/dashboard/sales']" class="btn btn-outline-info btn-block"><i class="feather ft-unlock"></i>
|
||||
Login</button>
|
||||
</form>
|
||||
</div>
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2 my-1"><span>New to
|
||||
Modern
|
||||
?</span></p>
|
||||
<div class="card-body">
|
||||
<a [routerLink]="['/authentication/registerWithBgImage']" class="btn btn-outline-danger btn-block"><i
|
||||
class="feather ft-user"></i>
|
||||
Register</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { LoginWithBgImageComponent } from './login-with-bg-image.component';
|
||||
|
||||
describe('LoginWithBgImageComponent', () => {
|
||||
let component: LoginWithBgImageComponent;
|
||||
let fixture: ComponentFixture<LoginWithBgImageComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ LoginWithBgImageComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(LoginWithBgImageComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-login-with-bg-image',
|
||||
templateUrl: './login-with-bg-image.component.html',
|
||||
styleUrls: ['./login-with-bg-image.component.css']
|
||||
})
|
||||
export class LoginWithBgImageComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
.content-wrapper {
|
||||
padding: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 m-0">
|
||||
<div class="card-header border-0">
|
||||
<div class="card-title text-center">
|
||||
<div class="p-1"><img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Easily
|
||||
Using</span></h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="card-body pt-0 text-center">
|
||||
<a [routerLink]="" class="btn btn-social mb-1 mr-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span> <span class="px-1">facebook</span> </a>
|
||||
<a [routerLink]="" class="btn btn-social mb-1 mr-1 btn-outline-google"><span
|
||||
class="la la-google-plus font-medium-4"></span> <span class="px-1">google</span> </a>
|
||||
</div>
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2"><span>OR Using Account
|
||||
Details</span></p>
|
||||
<div class="card-body pt-0">
|
||||
<form class="form-horizontal">
|
||||
<fieldset class="form-group floating-label-form-group">
|
||||
<label for="user-name">Your Username</label>
|
||||
<input type="text" class="form-control" id="user-name" placeholder="Your Username">
|
||||
</fieldset>
|
||||
<fieldset class="form-group floating-label-form-group mb-1">
|
||||
<label for="user-password">Enter Password</label>
|
||||
<input type="password" class="form-control" id="user-password" placeholder="Enter Password">
|
||||
</fieldset>
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-6 col-12 text-center text-sm-left">
|
||||
<div class="custom-control custom-checkbox mb-1">
|
||||
<input type="checkbox" class="custom-control-input" name="remember-me" id="remember-me">
|
||||
<label class="custom-control-label" for="remember-me">Remember Me</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-12 float-sm-left text-center text-sm-right"><a
|
||||
[routerLink]="['/authentication/recoverPassword']" class="card-link">Forgot Password?</a>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" [routerLink]="['/dashboard/sales']" class="btn btn-outline-info btn-block"><i class="feather ft-unlock"></i>
|
||||
Login</button>
|
||||
</form>
|
||||
</div>
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2 my-1"><span>New to
|
||||
Modern ?</span></p>
|
||||
<div class="card-body">
|
||||
<a [routerLink]="['/authentication/registerWithBg']" class="btn btn-outline-danger btn-block"><i
|
||||
class="feather ft-user"></i> Register</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { LoginWithBgComponent } from './login-with-bg.component';
|
||||
|
||||
describe('LoginWithBgComponent', () => {
|
||||
let component: LoginWithBgComponent;
|
||||
let fixture: ComponentFixture<LoginWithBgComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ LoginWithBgComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(LoginWithBgComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-login-with-bg',
|
||||
templateUrl: './login-with-bg.component.html',
|
||||
styleUrls: ['./login-with-bg.component.css']
|
||||
})
|
||||
export class LoginWithBgComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
html body {
|
||||
height: fit-content !important;
|
||||
}
|
||||
:host ::ng-deep .navbar-flexbox-container {
|
||||
top: -50px;
|
||||
position: relative;
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row navbar-flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 m-0">
|
||||
<div class="card-header border-0">
|
||||
<div class="card-title text-center">
|
||||
<img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Easily
|
||||
Using</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2 my-2"><span>OR Using
|
||||
Account Details</span></p>
|
||||
<div class="card-body pt-0">
|
||||
<form class="form-horizontal">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="text" class="form-control" id="user-name" placeholder="Your Username" required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-user"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="password" class="form-control" id="user-password" placeholder="Enter Password"
|
||||
required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<button type="submit" [routerLink]="['/dashboard/sales']" class="btn btn-info btn-lg btn-block"><i class="feather ft-unlock"></i>
|
||||
Login</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p class="text-center"><a [routerLink]="['/authentication/recoverPassword']" class="card-link">Recover
|
||||
password</a></p>
|
||||
<p class="text-center">New to Modern Admin? <a [routerLink]="['/authentication/registerWithNavbar']"
|
||||
class="card-link">Create
|
||||
Account</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { LoginWithNavbarComponent } from './login-with-navbar.component';
|
||||
|
||||
describe('LoginWithNavbarComponent', () => {
|
||||
let component: LoginWithNavbarComponent;
|
||||
let fixture: ComponentFixture<LoginWithNavbarComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ LoginWithNavbarComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(LoginWithNavbarComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-login-with-navbar',
|
||||
templateUrl: './login-with-navbar.component.html',
|
||||
styleUrls: ['./login-with-navbar.component.css']
|
||||
})
|
||||
export class LoginWithNavbarComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
:host ::ng-deep .top_space {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row ">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 px-2 py-2 m-0">
|
||||
<div class="card-header border-0 pb-0">
|
||||
<div class="card-title text-center">
|
||||
<img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>We will send you
|
||||
a link to reset password.</span></h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="email" class="form-control" id="user-email" placeholder="Your Email Address"
|
||||
required>
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-mail"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<button type="submit" class="btn btn-outline-info btn-lg btn-block"><i class="feather ft-unlock"></i>
|
||||
Recover Password</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer border-0">
|
||||
<p class="float-sm-left text-center"><a [routerLink]="['/authentication/loginSimple']"
|
||||
class="card-link">Login</a></p>
|
||||
<p class="float-sm-right text-center">New to Modern ? <a
|
||||
[routerLink]="['/authentication/registerSimple']" class="card-link">Create Account</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { RecoverPasswordComponent } from './recover-password.component';
|
||||
|
||||
describe('RecoverPasswordComponent', () => {
|
||||
let component: RecoverPasswordComponent;
|
||||
let fixture: ComponentFixture<RecoverPasswordComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ RecoverPasswordComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(RecoverPasswordComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-recover-password',
|
||||
templateUrl: './recover-password.component.html',
|
||||
styleUrls: ['./recover-password.component.css']
|
||||
})
|
||||
export class RecoverPasswordComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
html body {
|
||||
height: fit-content !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .top_space {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,116 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row ">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 m-0">
|
||||
<div class="card-header border-0 pb-0">
|
||||
<div class="card-title text-center">
|
||||
<img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Please Sign
|
||||
Up</span></h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-12 col-sm-6 col-md-6">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="text" name="first_name" id="first_name" class="form-control"
|
||||
placeholder="First Name" tabindex="1">
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-user"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 col-md-6">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="text" name="last_name" id="last_name" class="form-control"
|
||||
placeholder="Last Name" tabindex="2">
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-user"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="text" name="display_name" id="display_name" class="form-control"
|
||||
placeholder="Display Name" tabindex="3" required
|
||||
data-validation-required-message="Please enter display name.">
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-user"></i>
|
||||
</div>
|
||||
<div class="help-block font-small-3"></div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="email" name="email" id="email" class="form-control" placeholder="Email Address"
|
||||
tabindex="4" required data-validation-required-message="Please enter email address.">
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-mail"></i>
|
||||
</div>
|
||||
<div class="help-block font-small-3"></div>
|
||||
</fieldset>
|
||||
<div class="row">
|
||||
<div class="col-12 col-sm-6 col-md-6">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="password" name="password" id="password" class="form-control"
|
||||
placeholder="Password" tabindex="5" required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
<div class="help-block font-small-3"></div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 col-md-6">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="password" name="password_confirmation" id="password_confirmation"
|
||||
class="form-control" placeholder="Confirm Password" tabindex="6"
|
||||
data-validation-matches-match="password"
|
||||
data-validation-matches-message="Password & Confirm Password must be the same.">
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
<div class="help-block font-small-3"></div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="col-4 col-sm-3 col-md-3">
|
||||
<div class="custom-control custom-checkbox mb-1">
|
||||
<input type="checkbox" class="custom-control-input" name="remember-me" id="remember-me">
|
||||
<label class="custom-control-label" for="remember-me"> I Agree</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-8 col-sm-9 col-md-9">
|
||||
<p class="font-small-3">By clicking Register, you agree to the <a [routerLink]=""
|
||||
data-toggle="modal" data-target="#t_and_c_m">Terms and Conditions</a> set out by this
|
||||
site, including our Cookie
|
||||
Use.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-12 col-sm-6 col-md-6">
|
||||
<button type="submit" class="btn btn-info btn-lg btn-block"><i class="feather ft-user"></i>
|
||||
Register</button>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 col-md-6">
|
||||
<a [routerLink]="['/authentication/loginAdvanced']" class="btn btn-danger btn-lg btn-block"><i
|
||||
class="feather ft-unlock"></i>
|
||||
Login</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { RegisterAdvancedComponent } from './register-advanced.component';
|
||||
|
||||
describe('RegisterAdvancedComponent', () => {
|
||||
let component: RegisterAdvancedComponent;
|
||||
let fixture: ComponentFixture<RegisterAdvancedComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ RegisterAdvancedComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(RegisterAdvancedComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-register-advanced',
|
||||
templateUrl: './register-advanced.component.html',
|
||||
styleUrls: ['./register-advanced.component.css']
|
||||
})
|
||||
export class RegisterAdvancedComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
:host ::ng-deep .top_space {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 px-2 py-2 m-0">
|
||||
<div class="card-header border-0">
|
||||
<div class="card-title text-center">
|
||||
<img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Create
|
||||
Account</span></h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal form-simple">
|
||||
<fieldset class="form-group position-relative has-icon-left mb-1">
|
||||
<input type="text" class="form-control form-control-lg input-lg" id="user-name"
|
||||
placeholder="User Name">
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-user"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left mb-1">
|
||||
<input type="email" class="form-control form-control-lg input-lg" id="user-email"
|
||||
placeholder="Your Email Address" required>
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-mail"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="password" class="form-control form-control-lg input-lg" id="user-password"
|
||||
placeholder="Enter Password" required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<button type="submit" class="btn btn-info btn-lg btn-block"><i class="feather ft-unlock"></i>
|
||||
Register</button>
|
||||
</form>
|
||||
</div>
|
||||
<p class="text-center">Already have an account ? <a [routerLink]="['/authentication/loginSimple']"
|
||||
class="card-link">Login</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { RegisterSimpleComponent } from './register-simple.component';
|
||||
|
||||
describe('RegisterSimpleComponent', () => {
|
||||
let component: RegisterSimpleComponent;
|
||||
let fixture: ComponentFixture<RegisterSimpleComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ RegisterSimpleComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(RegisterSimpleComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-register-simple',
|
||||
templateUrl: './register-simple.component.html',
|
||||
styleUrls: ['./register-simple.component.css']
|
||||
})
|
||||
export class RegisterSimpleComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
html body {
|
||||
height: fit-content !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .top_space {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 px-1 py-1 m-0">
|
||||
<div class="card-header border-0 pb-0">
|
||||
<div class="card-title text-center">
|
||||
<img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Easily
|
||||
Using</span></h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2 my-1"><span>OR Using
|
||||
Email</span></p>
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="text" class="form-control" id="user-name" placeholder="User Name">
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-user"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="email" class="form-control" id="user-email" placeholder="Your Email Address"
|
||||
required>
|
||||
<div class="form-control-position">
|
||||
<i class="feather ft-mail"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="password" class="form-control" id="user-password" placeholder="Enter Password"
|
||||
required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-6 col-12 text-center text-sm-left pr-0">
|
||||
<div class="custom-control custom-checkbox mb-1">
|
||||
<input type="checkbox" class="custom-control-input" name="remember-me" id="remember-me">
|
||||
<label class="custom-control-label" for="remember-me"> Remember Me</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-12 float-sm-left text-center text-sm-right"><a
|
||||
[routerLink]="['/authentication/recoverPassword']" class="card-link">Forgot Password?</a>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" class="btn btn-outline-info btn-block"><i class="feather ft-user"></i>
|
||||
Register</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<a [routerLink]="['/authentication/loginWithBgImage']" class="btn btn-outline-danger btn-block"><i
|
||||
class="feather ft-unlock"></i>
|
||||
Login</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { RegisterWithBgImageComponent } from './register-with-bg-image.component';
|
||||
|
||||
describe('RegisterWithBgImageComponent', () => {
|
||||
let component: RegisterWithBgImageComponent;
|
||||
let fixture: ComponentFixture<RegisterWithBgImageComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ RegisterWithBgImageComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(RegisterWithBgImageComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-register-with-bg-image',
|
||||
templateUrl: './register-with-bg-image.component.html',
|
||||
styleUrls: ['./register-with-bg-image.component.css']
|
||||
})
|
||||
export class RegisterWithBgImageComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
html body {
|
||||
height: fit-content !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .top_space {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row ">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 px-1 py-1 m-0">
|
||||
<div class="card-header border-0 pb-0">
|
||||
<div class="card-title text-center">
|
||||
<img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Easily
|
||||
Using</span></h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="card-body text-center">
|
||||
<a [routerLink]="" class="btn btn-social mb-1 mr-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span>
|
||||
<span class="px-1">facebook</span> </a>
|
||||
<a [routerLink]="" class="btn btn-social mb-1 btn-outline-google"><span
|
||||
class="la la-google-plus font-medium-4"></span> <span class="px-1">google</span> </a>
|
||||
</div>
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2 my-1"><span>OR Using
|
||||
Email</span></p>
|
||||
<div class="card-body pt-0">
|
||||
<form class="form-horizontal">
|
||||
<fieldset class="form-group floating-label-form-group">
|
||||
<label for="user-name">User Name</label>
|
||||
<input type="text" class="form-control" id="user-name" placeholder="User Name">
|
||||
</fieldset>
|
||||
<fieldset class="form-group floating-label-form-group">
|
||||
<label for="user-email">Your Email Address</label>
|
||||
<input type="email" class="form-control" id="user-email" placeholder="Your Email Address">
|
||||
</fieldset>
|
||||
<fieldset class="form-group floating-label-form-group mb-1">
|
||||
<label for="user-password">Enter Password</label>
|
||||
<input type="password" class="form-control" id="user-password" placeholder="Enter Password">
|
||||
</fieldset>
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-6 col-12 text-center text-sm-left pr-0">
|
||||
<div class="custom-control custom-checkbox mb-1">
|
||||
<input type="checkbox" class="custom-control-input" name="remember-me" id="remember-me">
|
||||
<label class="custom-control-label" for="remember-me"> Remember Me</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-12 float-sm-left text-center text-sm-right"><a
|
||||
[routerLink]="['/authentication/recoverPassword']" class="card-link">Forgot Password?</a>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" class="btn btn-outline-info btn-block"><i class="feather ft-user"></i>
|
||||
Register</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="card-body pt-0">
|
||||
<a [routerLink]="['/authentication/loginWithBg']" class="btn btn-outline-danger btn-block"><i
|
||||
class="feather ft-unlock"></i>
|
||||
Login</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { RegisterWithBgComponent } from './register-with-bg.component';
|
||||
|
||||
describe('RegisterWithBgComponent', () => {
|
||||
let component: RegisterWithBgComponent;
|
||||
let fixture: ComponentFixture<RegisterWithBgComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ RegisterWithBgComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(RegisterWithBgComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-register-with-bg',
|
||||
templateUrl: './register-with-bg.component.html',
|
||||
styleUrls: ['./register-with-bg.component.css']
|
||||
})
|
||||
export class RegisterWithBgComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
html body {
|
||||
height: fit-content !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .top_space {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
:host ::ng-deep .content-wrapper {
|
||||
padding-top: 0px !important;
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row ">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row navbar-flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 px-2 py-2 row mb-0">
|
||||
<div class="card-header no-border pb-0">
|
||||
<div class="card-title text-center">
|
||||
<img src="../../../../../assets/images/logo/logo-dark.png" alt="branding logo">
|
||||
</div>
|
||||
<h6 class="card-subtitle line-on-side text-muted text-center font-small-3 pt-2"><span>Easily Using</span>
|
||||
</h6>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2 my-2"><span>OR Using Account
|
||||
Details</span></p>
|
||||
<div class="card-body pt-0">
|
||||
<form class="form-horizontal">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="text" class="form-control" id="user-name" placeholder="User Name">
|
||||
<div class="form-control-position">
|
||||
<i class="la la-user"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="email" class="form-control" id="email" placeholder="Your Email Address" required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-envelope-o"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="password" class="form-control" id="user-password" placeholder="Enter Password" required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<button type="submit" class="btn btn-info btn-block">Register</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer pb-0">
|
||||
<p class="text-center"><a [routerLink]="['/authentication/recoverPassword']" class="card-link">Recover
|
||||
password</a></p>
|
||||
<p class="text-center">Already have an account ? <a [routerLink]="['/authentication/loginWithNavbar']"
|
||||
class="card-link">Login</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { RegisterWithNavbarComponent } from './register-with-navbar.component';
|
||||
|
||||
describe('RegisterWithNavbarComponent', () => {
|
||||
let component: RegisterWithNavbarComponent;
|
||||
let fixture: ComponentFixture<RegisterWithNavbarComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ RegisterWithNavbarComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(RegisterWithNavbarComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-register-with-navbar',
|
||||
templateUrl: './register-with-navbar.component.html',
|
||||
styleUrls: ['./register-with-navbar.component.css']
|
||||
})
|
||||
export class RegisterWithNavbarComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
:host ::ng-deep .top_space {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row ">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="row flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 box-shadow-2 p-0">
|
||||
<div class="card border-grey border-lighten-3 px-2 py-2 m-0">
|
||||
<div class="card-header border-0 text-center">
|
||||
<img src="../../../../../assets/images/portrait/small/avatar-s-1.png" alt="unlock-user"
|
||||
class="rounded-circle img-fluid center-block">
|
||||
<h5 class="card-title mt-1">John Doe</h5>
|
||||
</div>
|
||||
|
||||
<p class="card-subtitle line-on-side text-muted text-center font-small-3 mx-2"><span>Unlock your
|
||||
account</span></p>
|
||||
<div class="card-content">
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal">
|
||||
<fieldset class="form-group position-relative has-icon-left">
|
||||
<input type="password" class="form-control form-control-lg input-lg" id="password"
|
||||
placeholder="Enter Password" required>
|
||||
<div class="form-control-position">
|
||||
<i class="la la-key"></i>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-6 col-12 text-center text-sm-left pr-0 mb-1">
|
||||
<div class="custom-control custom-checkbox mb-1">
|
||||
<input type="checkbox" class="custom-control-input" name="remember-me" id="remember-me">
|
||||
<label class="custom-control-label" for="remember-me"> Remember Me</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-12 float-sm-left text-center text-sm-right mb-1"><a
|
||||
[routerLink]="['/authentication/recoverPassword']" class="card-link"><i class="feather ft-unlock"></i>
|
||||
Forgot Password?</a>
|
||||
</div>
|
||||
</div>
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-outline-primary btn-lg btn-block"><i
|
||||
class="la la-lock"></i>
|
||||
Unlock</a>
|
||||
<a [routerLink]="['/authentication/loginSimple']" class="btn btn-outline-danger btn-lg btn-block"><i
|
||||
class="feather ft-power"></i>
|
||||
Logout</a>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { UnlockUserComponent } from './unlock-user.component';
|
||||
|
||||
describe('UnlockUserComponent', () => {
|
||||
let component: UnlockUserComponent;
|
||||
let fixture: ComponentFixture<UnlockUserComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ UnlockUserComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(UnlockUserComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-unlock-user',
|
||||
templateUrl: './unlock-user.component.html',
|
||||
styleUrls: ['./unlock-user.component.css']
|
||||
})
|
||||
export class UnlockUserComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
66
src/app/content/full-pages/error/error.module.ts
Normal file
66
src/app/content/full-pages/error/error.module.ts
Normal file
@@ -0,0 +1,66 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { Error400Component } from './error400/error400.component';
|
||||
import { Error400WithNavbarComponent } from './error400-with-navbar/error400-with-navbar.component';
|
||||
import { Error401Component } from './error401/error401.component';
|
||||
import { Error401WithNavbarComponent } from './error401-with-navbar/error401-with-navbar.component';
|
||||
import { Error403Component } from './error403/error403.component';
|
||||
import { Error403WithNavbarComponent } from './error403-with-navbar/error403-with-navbar.component';
|
||||
import { Error404Component } from './error404/error404.component';
|
||||
import { Error404WithNavbarComponent } from './error404-with-navbar/error404-with-navbar.component';
|
||||
import { Error500Component } from './error500/error500.component';
|
||||
import { Error500WithNavbarComponent } from './error500-with-navbar/error500-with-navbar.component';
|
||||
import { RouterModule } from '@angular/router';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
RouterModule.forChild([
|
||||
{
|
||||
path: 'error400',
|
||||
component: Error400Component
|
||||
},
|
||||
{
|
||||
path: 'error400WithNavbar',
|
||||
component: Error400WithNavbarComponent
|
||||
},
|
||||
{
|
||||
path: 'error401',
|
||||
component: Error401Component
|
||||
},
|
||||
{
|
||||
path: 'error401WithNavbar',
|
||||
component: Error401WithNavbarComponent
|
||||
},
|
||||
{
|
||||
path: 'error403',
|
||||
component: Error403Component
|
||||
},
|
||||
{
|
||||
path: 'error403WithNavbar',
|
||||
component: Error403WithNavbarComponent
|
||||
},
|
||||
{
|
||||
path: 'error404',
|
||||
component: Error404Component
|
||||
},
|
||||
{
|
||||
path: 'error404WithNavbar',
|
||||
component: Error404WithNavbarComponent
|
||||
},
|
||||
{
|
||||
path: 'error500',
|
||||
component: Error500Component
|
||||
},
|
||||
{
|
||||
path: 'error500WithNavbar',
|
||||
component: Error500WithNavbarComponent
|
||||
},
|
||||
])
|
||||
],
|
||||
declarations: [Error400Component, Error400WithNavbarComponent, Error401Component, Error401WithNavbarComponent,
|
||||
Error403Component, Error403WithNavbarComponent, Error404Component, Error404WithNavbarComponent, Error500Component,
|
||||
Error500WithNavbarComponent],
|
||||
exports: [RouterModule]
|
||||
})
|
||||
export class ErrorModule { }
|
||||
@@ -0,0 +1,49 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row ">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="col-10 offset-1 col-md-6 offset-md-3 col-lg-4 offset-lg-4 box-shadow-2">
|
||||
<div class="card border-grey border-lighten-3 px-2 my-0 row">
|
||||
<div class="card-header no-border pb-1">
|
||||
<div class="card-body">
|
||||
<h2 class="error-code text-center mb-2">400</h2>
|
||||
<h3 class="text-uppercase text-center">Bad Request</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-content px-2">
|
||||
<fieldset class="row py-2">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1 " placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="la la-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block"><i class="la la-home"></i>
|
||||
Back to Home</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer no-border pb-1">
|
||||
<div class="text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github-alt font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error400WithNavbarComponent } from './error400-with-navbar.component';
|
||||
|
||||
describe('Error400WithNavbarComponent', () => {
|
||||
let component: Error400WithNavbarComponent;
|
||||
let fixture: ComponentFixture<Error400WithNavbarComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error400WithNavbarComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error400WithNavbarComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,11 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error400-with-navbar',
|
||||
templateUrl: './error400-with-navbar.component.html',
|
||||
styleUrls: ['./error400-with-navbar.component.css']
|
||||
})
|
||||
export class Error400WithNavbarComponent {
|
||||
|
||||
constructor() { }
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
.content-wrapper {
|
||||
padding: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row mb-1">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-md-4 col-10 p-0">
|
||||
<div class="card-header bg-transparent border-0">
|
||||
<h2 class="error-code text-center mb-2">400</h2>
|
||||
<h3 class="text-uppercase text-center">Bad Request</h3>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<fieldset class="row py-2">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1 " placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="feather ft-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block"><i class="feather ft-home"></i>
|
||||
Home</a>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/search/searchWebsite']" class="btn btn-danger btn-block"><i
|
||||
class="feather ft-search"></i> Search</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer bg-transparent">
|
||||
<div class="row">
|
||||
<p class="text-muted text-center col-12 pb-1">© <span class="year"></span> <a [routerLink]="">Modern
|
||||
</a>Crafted with <i class="feather ft-heart pink"> </i> by <a
|
||||
href="http://themeforest.net/user/pixinvent/portfolio" target="_blank">PIXINVENT</a></p>
|
||||
<div class="col-12 text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error400Component } from './error400.component';
|
||||
|
||||
describe('Error400Component', () => {
|
||||
let component: Error400Component;
|
||||
let fixture: ComponentFixture<Error400Component>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error400Component ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error400Component);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error400',
|
||||
templateUrl: './error400.component.html',
|
||||
styleUrls: ['./error400.component.css']
|
||||
})
|
||||
export class Error400Component {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
html body {
|
||||
height: max-content !important;
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row ">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<div class="col-10 offset-1 col-md-6 offset-md-3 col-lg-4 offset-lg-4 box-shadow-2">
|
||||
<div class="card border-grey border-lighten-3 px-2 row mb-0">
|
||||
<div class="card-header no-border pb-1">
|
||||
<div class="card-body">
|
||||
<h2 class="error-code text-center mb-2">401</h2>
|
||||
<h3 class="text-uppercase text-center">Unauthorized</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-content px-2">
|
||||
<fieldset class="row py-2">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1" placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="la la-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block "><i class="la la-home"></i>
|
||||
Back to Home</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer no-border pb-1">
|
||||
<div class="text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error401WithNavbarComponent } from './error401-with-navbar.component';
|
||||
|
||||
describe('Error401WithNavbarComponent', () => {
|
||||
let component: Error401WithNavbarComponent;
|
||||
let fixture: ComponentFixture<Error401WithNavbarComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error401WithNavbarComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error401WithNavbarComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error401-with-navbar',
|
||||
templateUrl: './error401-with-navbar.component.html',
|
||||
styleUrls: ['./error401-with-navbar.component.css']
|
||||
})
|
||||
export class Error401WithNavbarComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
.content-wrapper {
|
||||
padding: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row mb-1">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 p-0">
|
||||
<div class="card-header bg-transparent border-0">
|
||||
<h2 class="error-code text-center mb-2">401</h2>
|
||||
<h3 class="text-uppercase text-center">Error 401 - Unauthorized Access.</h3>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<fieldset class="row py-2">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1 " placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="feather ft-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block"><i class="feather ft-home"></i>
|
||||
Home</a>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/search/searchWebsite']" class="btn btn-danger btn-block"><i
|
||||
class="feather ft-search"></i> Search</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer bg-transparent">
|
||||
<div class="row">
|
||||
<p class="text-muted text-center col-12 pb-1">© <span class="year"></span> <a [routerLink]="">Modern
|
||||
</a>Crafted with <i class="feather ft-heart pink"> </i> by <a
|
||||
href="http://themeforest.net/user/pixinvent/portfolio" target="_blank">PIXINVENT</a></p>
|
||||
<div class="col-12 text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error401Component } from './error401.component';
|
||||
|
||||
describe('Error401Component', () => {
|
||||
let component: Error401Component;
|
||||
let fixture: ComponentFixture<Error401Component>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error401Component ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error401Component);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error401',
|
||||
templateUrl: './error401.component.html',
|
||||
styleUrls: ['./error401.component.css']
|
||||
})
|
||||
export class Error401Component {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row ">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<div class="col-10 offset-1 col-md-6 offset-md-3 col-lg-4 offset-lg-4 box-shadow-2">
|
||||
<div class="card border-grey border-lighten-3 px-2 my-0 row">
|
||||
<div class="card-header no-border pb-1">
|
||||
<div class="card-body">
|
||||
<h2 class="error-code text-center mb-2">403</h2>
|
||||
<h4 class="text-uppercase text-center">Access Denied/Forbidden !</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-content px-2">
|
||||
<fieldset class="row py-1">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1" placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="la la-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block"><i class="la la-home"></i>
|
||||
Back to Home</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer no-border pb-1 px-0">
|
||||
<div class="text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mx-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error403WithNavbarComponent } from './error403-with-navbar.component';
|
||||
|
||||
describe('Error403WithNavbarComponent', () => {
|
||||
let component: Error403WithNavbarComponent;
|
||||
let fixture: ComponentFixture<Error403WithNavbarComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error403WithNavbarComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error403WithNavbarComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error403-with-navbar',
|
||||
templateUrl: './error403-with-navbar.component.html',
|
||||
styleUrls: ['./error403-with-navbar.component.css']
|
||||
})
|
||||
export class Error403WithNavbarComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
.content-wrapper {
|
||||
padding: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row mb-1">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 p-0">
|
||||
<div class="card-header bg-transparent border-0">
|
||||
<h2 class="error-code text-center mb-2">403</h2>
|
||||
<h3 class="text-uppercase text-center">Access Denied/Forbidden !</h3>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<fieldset class="row py-2">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1 " placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="feather ft-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block"><i class="feather ft-home"></i>
|
||||
Home</a>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/search/searchWebsite']" class="btn btn-danger btn-block"><i
|
||||
class="feather ft-search"></i> Search</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer bg-transparent">
|
||||
<div class="row">
|
||||
<p class="text-muted text-center col-12 pb-1">© <span class="year"></span> <a [routerLink]="">Modern
|
||||
</a>Crafted with <i class="feather ft-heart pink"> </i> by <a
|
||||
href="http://themeforest.net/user/pixinvent/portfolio" target="_blank">PIXINVENT</a></p>
|
||||
<div class="col-12 text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error403Component } from './error403.component';
|
||||
|
||||
describe('Error403Component', () => {
|
||||
let component: Error403Component;
|
||||
let fixture: ComponentFixture<Error403Component>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error403Component ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error403Component);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error403',
|
||||
templateUrl: './error403.component.html',
|
||||
styleUrls: ['./error403.component.css']
|
||||
})
|
||||
export class Error403Component {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
html body {
|
||||
height: max-content !important;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<div class="col-10 offset-1 col-md-6 offset-md-3 col-lg-4 offset-lg-4 box-shadow-2">
|
||||
<div class="card border-grey border-lighten-3 px-2 my-0 row">
|
||||
<div class="card-header no-border pb-1">
|
||||
<div class="card-body">
|
||||
<h2 class="error-code text-center mb-2">404</h2>
|
||||
<h3 class="text-uppercase text-center">Page Not Found !</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-content px-2">
|
||||
<fieldset class="row py-1">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1" placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="la la-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block"><i class="la la-home"></i>
|
||||
Back to Home</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer no-border pb-1">
|
||||
<div class="text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error404WithNavbarComponent } from './error404-with-navbar.component';
|
||||
|
||||
describe('Error404WithNavbarComponent', () => {
|
||||
let component: Error404WithNavbarComponent;
|
||||
let fixture: ComponentFixture<Error404WithNavbarComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error404WithNavbarComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error404WithNavbarComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error404-with-navbar',
|
||||
templateUrl: './error404-with-navbar.component.html',
|
||||
styleUrls: ['./error404-with-navbar.component.css']
|
||||
})
|
||||
export class Error404WithNavbarComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
.content-wrapper {
|
||||
padding: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row mb-1">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 p-0">
|
||||
<div class="card-header bg-transparent border-0">
|
||||
<h2 class="error-code text-center mb-2">404</h2>
|
||||
<h3 class="text-uppercase text-center">Page Not Found !</h3>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<fieldset class="row py-2">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1 " placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="feather ft-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block"><i class="feather ft-home"></i>
|
||||
Home</a>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/search/searchWebsite']" class="btn btn-danger btn-block"><i
|
||||
class="feather ft-search"></i> Search</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer bg-transparent">
|
||||
<div class="row">
|
||||
<p class="text-muted text-center col-12 pb-1">© <span class="year"></span> <a [routerLink]="">Modern
|
||||
</a>Crafted with <i class="feather ft-heart pink"> </i> by <a
|
||||
href="http://themeforest.net/user/pixinvent/portfolio" target="_blank">PIXINVENT</a></p>
|
||||
<div class="col-12 text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error404Component } from './error404.component';
|
||||
|
||||
describe('Error404Component', () => {
|
||||
let component: Error404Component;
|
||||
let fixture: ComponentFixture<Error404Component>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error404Component ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error404Component);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error404',
|
||||
templateUrl: './error404.component.html',
|
||||
styleUrls: ['./error404.component.css']
|
||||
})
|
||||
export class Error404Component {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
html body {
|
||||
height: max-content !important;
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row ">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<div class="col-10 offset-1 col-md-6 offset-md-3 col-lg-4 offset-lg-4 box-shadow-2">
|
||||
<div class="card border-grey border-lighten-3 px-2 my-0 row">
|
||||
<div class="card-header no-border pb-1">
|
||||
<div class="card-body">
|
||||
<h2 class="error-code text-center mb-2">500</h2>
|
||||
<h3 class="text-uppercase text-center">Internal Server Error</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-content px-2">
|
||||
<fieldset class="row py-1">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1" placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="la la-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block"><i class="la la-home"></i>
|
||||
Back to Home</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer no-border pb-1">
|
||||
<div class="text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error500WithNavbarComponent } from './error500-with-navbar.component';
|
||||
|
||||
describe('Error500WithNavbarComponent', () => {
|
||||
let component: Error500WithNavbarComponent;
|
||||
let fixture: ComponentFixture<Error500WithNavbarComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error500WithNavbarComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error500WithNavbarComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error500-with-navbar',
|
||||
templateUrl: './error500-with-navbar.component.html',
|
||||
styleUrls: ['./error500-with-navbar.component.css']
|
||||
})
|
||||
export class Error500WithNavbarComponent {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
.content-wrapper {
|
||||
padding: 0rem !important;
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row mb-1">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<section class="flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-lg-4 col-md-8 col-10 p-0">
|
||||
<div class="card-header bg-transparent border-0">
|
||||
<h2 class="error-code text-center mb-2">500</h2>
|
||||
<h3 class="text-uppercase text-center">Internal Server Error</h3>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<fieldset class="row py-2">
|
||||
<div class="input-group col-12">
|
||||
<input type="text" class="form-control border-grey border-lighten-1 " placeholder="Search..."
|
||||
aria-describedby="button-addon2">
|
||||
<span class="input-group-append" id="button-addon2">
|
||||
<button class="btn btn-secondary border-grey border-lighten-1" type="button"><i
|
||||
class="feather ft-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="row py-2">
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/dashboard/sales']" class="btn btn-primary btn-block"><i class="feather ft-home"></i>
|
||||
Home</a>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 col-md-6 mb-1">
|
||||
<a [routerLink]="['/search/searchWebsite']" class="btn btn-danger btn-block"><i
|
||||
class="feather ft-search"></i> Search</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer bg-transparent">
|
||||
<div class="row">
|
||||
<p class="text-muted text-center col-12 pb-1">© <span class="year"></span> <a [routerLink]="">Modern
|
||||
</a>Crafted with <i class="feather ft-heart pink"> </i> by <a
|
||||
href="http://themeforest.net/user/pixinvent/portfolio" target="_blank">PIXINVENT</a></p>
|
||||
<div class="col-12 text-center">
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-facebook"><span
|
||||
class="la la-facebook"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-twitter"><span
|
||||
class="la la-twitter"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-linkedin"><span
|
||||
class="la la-linkedin font-medium-4"></span></a>
|
||||
<a [routerLink]="" class="btn btn-social-icon mr-1 mb-1 btn-outline-github"><span
|
||||
class="la la-github font-medium-4"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { Error500Component } from './error500.component';
|
||||
|
||||
describe('Error500Component', () => {
|
||||
let component: Error500Component;
|
||||
let fixture: ComponentFixture<Error500Component>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ Error500Component ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(Error500Component);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-error500',
|
||||
templateUrl: './error500.component.html',
|
||||
styleUrls: ['./error500.component.css']
|
||||
})
|
||||
export class Error500Component {
|
||||
|
||||
constructor() { }
|
||||
|
||||
}
|
||||
21
src/app/content/full-pages/full-pages.module.ts
Normal file
21
src/app/content/full-pages/full-pages.module.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { FullPagesRoutingModule } from './full-pages.routing.module';
|
||||
import { ErrorModule } from './error/error.module';
|
||||
import { AuthenticationModule } from './authentication/authentication.module';
|
||||
import { OthersModule } from './others/others.module';
|
||||
import { RouterModule } from '@angular/router';
|
||||
|
||||
|
||||
@NgModule({
|
||||
declarations: [],
|
||||
imports: [
|
||||
CommonModule,
|
||||
FullPagesRoutingModule,
|
||||
ErrorModule,
|
||||
AuthenticationModule,
|
||||
OthersModule,
|
||||
],
|
||||
exports: [RouterModule],
|
||||
})
|
||||
export class FullPagesModule { }
|
||||
18
src/app/content/full-pages/full-pages.routing.module.ts
Normal file
18
src/app/content/full-pages/full-pages.routing.module.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { Routes, RouterModule } from '@angular/router';
|
||||
|
||||
const routes: Routes = [
|
||||
{
|
||||
path: '',
|
||||
children: []
|
||||
}
|
||||
];
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
RouterModule.forRoot(
|
||||
routes,
|
||||
{ enableTracing: true } // <-- debugging purposes only
|
||||
)]
|
||||
})
|
||||
export class FullPagesRoutingModule { }
|
||||
@@ -0,0 +1,48 @@
|
||||
html body {
|
||||
height: max-content !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .fixed-navbar {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .countdown {
|
||||
color: white !important;
|
||||
font-size: 3rem !important;
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .measurements-text {
|
||||
font-size: 1.5rem !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .countdown .measurements {
|
||||
padding: 1.5rem !important;
|
||||
float: left;
|
||||
border-radius: 0.5rem;
|
||||
}
|
||||
|
||||
:host ::ng-deep .count-down-timer {
|
||||
text-align: center;
|
||||
max-width: 400px;
|
||||
margin: 20px auto;
|
||||
color: #fff;
|
||||
border-radius: 6px;
|
||||
padding: 10px;
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
:host ::ng-deep .count-down-timer .wrapper .description {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(5, calc(25% - 5px));
|
||||
grid-column-gap: 10px;
|
||||
font-size: 1.5rem;
|
||||
|
||||
}
|
||||
|
||||
:host ::ng-deep .count-down-timer .wrapper .times {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(5, calc(25% - 5px));
|
||||
grid-column-gap: 10px;
|
||||
font-size: 3.0rem;
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row mb-1">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<!-- coming soon with background image -->
|
||||
<section class="flexbox-container">
|
||||
<div class="col-12 d-flex align-items-center justify-content-center">
|
||||
<div class="col-md-6 col-10 p-0">
|
||||
<div class="card card-transparent box-shadow-0 border-0">
|
||||
<div class="card-content">
|
||||
<div class="text-center">
|
||||
<h5 class="card-text pb-2 white">WE ARE LAUNCHING SOON.</h5>
|
||||
<img src="../../../../../assets/images/logo/logo-light-lg.png"
|
||||
class="img-responsive block width-300 mx-auto" width="300" alt="bg-img">
|
||||
<div class="count-down-timer">
|
||||
<p>Countdown to {{currentTime}} </p>
|
||||
<div class="wrapper">
|
||||
<div class="times">
|
||||
<p #days></p>
|
||||
<p #hours></p>
|
||||
<p #minutes></p>
|
||||
<p #seconds></p>
|
||||
</div>
|
||||
<div class="description">
|
||||
<p>Days</p>
|
||||
<p>Hours</p>
|
||||
<p>Minutes</p>
|
||||
<p>Seconds</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12 pt-1">
|
||||
<p class="card-text lead white">Our website is under construction.</p>
|
||||
</div>
|
||||
<div class="col-12 text-center pt-2">
|
||||
<p class="socialIcon card-text">
|
||||
<a [routerLink]=""><i class="la la-facebook-square white"></i></a>
|
||||
<a [routerLink]=""><i class="la la-twitter-square white"></i></a>
|
||||
<a [routerLink]=""><i class="la la-google-plus-square white"></i></a>
|
||||
<a [routerLink]=""><i class="la la-linkedin-square white"></i></a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!--/ coming soon with background image -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { BgImageComponent } from './bg-image.component';
|
||||
|
||||
describe('BgImageComponent', () => {
|
||||
let component: BgImageComponent;
|
||||
let fixture: ComponentFixture<BgImageComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ BgImageComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(BgImageComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,63 @@
|
||||
import { Component, OnInit, AfterViewInit, ElementRef, ViewChild } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-bg-image',
|
||||
templateUrl: './bg-image.component.html',
|
||||
styleUrls: ['./bg-image.component.css']
|
||||
})
|
||||
export class BgImageComponent implements OnInit, AfterViewInit{
|
||||
|
||||
date: any;
|
||||
now: any;
|
||||
targetDate: any = new Date(2023, 5, 11);
|
||||
targetTime: any = this.targetDate.getTime();
|
||||
difference: number;
|
||||
differenceweek: number;
|
||||
months: Array<string> = [
|
||||
'January',
|
||||
'February',
|
||||
'March',
|
||||
'April',
|
||||
'May',
|
||||
'June',
|
||||
'July',
|
||||
'August',
|
||||
'September',
|
||||
'October',
|
||||
'November',
|
||||
'December',
|
||||
];
|
||||
currentTime: any = `${
|
||||
this.months[this.targetDate.getMonth()]
|
||||
} ${this.targetDate.getDate()}, ${this.targetDate.getFullYear()}`;
|
||||
|
||||
@ViewChild('weeks', { static: true }) weeks: ElementRef;
|
||||
@ViewChild('days', { static: true }) days: ElementRef;
|
||||
@ViewChild('hours', { static: true }) hours: ElementRef;
|
||||
@ViewChild('minutes', { static: true }) minutes: ElementRef;
|
||||
@ViewChild('seconds', { static: true }) seconds: ElementRef;
|
||||
|
||||
ngOnInit() {}
|
||||
|
||||
ngAfterViewInit() {
|
||||
setInterval(() => {
|
||||
this.tickTock();
|
||||
this.difference = this.targetTime - this.now;
|
||||
this.difference = this.difference / (1000 * 60 * 60 * 24);
|
||||
|
||||
!isNaN(this.days.nativeElement.innerText)
|
||||
? (this.days.nativeElement.innerText = Math.floor(this.difference))
|
||||
: (this.days.nativeElement.innerHTML = ``);
|
||||
}, 1000);
|
||||
}
|
||||
tickTock() {
|
||||
this.date = new Date();
|
||||
this.now = this.date.getTime();
|
||||
this.days.nativeElement.innerText = Math.floor(this.difference);
|
||||
this.hours.nativeElement.innerText = 23 - this.date.getHours();
|
||||
this.minutes.nativeElement.innerText = 60 - this.date.getMinutes();
|
||||
this.seconds.nativeElement.innerText = 60 - this.date.getSeconds();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
html body {
|
||||
height: max-content !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .fixed-navbar {
|
||||
padding-top: 0rem !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .countdown {
|
||||
color: white !important;
|
||||
font-size: 3rem !important;
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .measurements-text {
|
||||
font-size: 1.5rem !important;
|
||||
}
|
||||
|
||||
:host ::ng-deep .countdown .measurements {
|
||||
padding: 1.5rem !important;
|
||||
float: left;
|
||||
border-radius: 0.5rem;
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
<div class="app-content content">
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header row mb-1">
|
||||
</div>
|
||||
<div class="content-body">
|
||||
<!-- coming soon bg video -->
|
||||
<section class="flexbox-container">
|
||||
<div class="col-12">
|
||||
<div class="card card-transparent box-shadow-0 border-0 coming-soon-content">
|
||||
<div class="card-content">
|
||||
<div class="text-center">
|
||||
<h5 class="card-text pt-1 pb-2 white">WE ARE LAUNCHING SOON.</h5>
|
||||
<img src="../../../../../assets/images/logo/logo-light-lg.png"
|
||||
class="img-responsive block width-300 mx-auto" width="300" alt="bg-img">
|
||||
<countdown class="card-text getting-started pt-1 mt-2 white d-inline-block"
|
||||
units="Weeks | Days | Hours | Minutes | Seconds" end="August 24, 2019"></countdown>
|
||||
<div class="col-12 pt-1">
|
||||
<p class="card-text lead white">Our website is under construction.</p>
|
||||
</div>
|
||||
<div class="col-12 text-center pt-2">
|
||||
<p class="socialIcon">
|
||||
<a [routerLink]=""><i class="la la-facebook-square white"></i></a>
|
||||
<a [routerLink]=""><i class="la la-twitter-square white"></i></a>
|
||||
<a [routerLink]=""><i class="la la-google-plus-square white"></i></a>
|
||||
<a [routerLink]=""><i class="la la-linkedin-square white"></i></a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!--/ coming soon bg video -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
|
||||
import { BgVideoComponent } from './bg-video.component';
|
||||
|
||||
describe('BgVideoComponent', () => {
|
||||
let component: BgVideoComponent;
|
||||
let fixture: ComponentFixture<BgVideoComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ BgVideoComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(BgVideoComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user