Moved from tslint to eslint as tslint was depreciated.

Added prettier and also prettied all the typescript files using prettier

ESLint is using the AirBnB rules which are the most strict to lint the files.
This commit is contained in:
tanshu committed 2020-10-01 21:28:12 +05:30
1 parent 40e79ff949
commit 1350870f9e
545 files changed
+8455 -7036

No files matched your search

@@ -5,29 +5,49 @@
</mat-card-title-group>
<mat-card-content>
<form [formGroup]="form" fxLayout="column">
<div fxLayout="row" fxLayoutAlign="space-around start" fxLayout.lt-md="column" fxLayoutGap="20px"
fxLayoutGap.lt-md="0px">
<div
fxLayout="row"
fxLayoutAlign="space-around start"
fxLayout.lt-md="column"
fxLayoutGap="20px"
fxLayoutGap.lt-md="0px"
>
<mat-form-field fxFlex>
<mat-label>Code</mat-label>
<input matInput placeholder="Code" formControlName="code">
<input matInput placeholder="Code" formControlName="code" />
</mat-form-field>
</div>
<div fxLayout="row" fxLayoutAlign="space-around start" fxLayout.lt-md="column" fxLayoutGap="20px"
fxLayoutGap.lt-md="0px">
<div
fxLayout="row"
fxLayoutAlign="space-around start"
fxLayout.lt-md="column"
fxLayoutGap="20px"
fxLayoutGap.lt-md="0px"
>
<mat-form-field fxFlex>
<mat-label>Name</mat-label>
<input matInput #nameElement placeholder="Name" formControlName="name">
<input matInput #nameElement placeholder="Name" formControlName="name" />
</mat-form-field>
</div>
<div fxLayout="row" fxLayoutAlign="space-around start" fxLayout.lt-md="column" fxLayoutGap="20px"
fxLayoutGap.lt-md="0px">
<div
fxLayout="row"
fxLayoutAlign="space-around start"
fxLayout.lt-md="column"
fxLayoutGap="20px"
fxLayoutGap.lt-md="0px"
>
<mat-checkbox formControlName="enabled">Is Enabled?</mat-checkbox>
</div>
<div fxLayout="row" fxLayoutAlign="space-around start" fxLayout.lt-md="column" fxLayoutGap="20px"
fxLayoutGap.lt-md="0px">
<div
fxLayout="row"
fxLayoutAlign="space-around start"
fxLayout.lt-md="column"
fxLayoutGap="20px"
fxLayoutGap.lt-md="0px"
>
<mat-form-field fxFlex>
<mat-label>OTP</mat-label>
<input matInput placeholder="OTP" formControlName="otp">
<input matInput placeholder="OTP" formControlName="otp" />
</mat-form-field>
</div>
</form>
@@ -1,6 +1,6 @@
import {async, ComponentFixture, TestBed} from '@angular/core/testing';
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import {ClientDetailComponent} from './client-detail.component';
import { ClientDetailComponent } from './client-detail.component';
describe('ClientDetailComponent', () => {
let component: ClientDetailComponent;
@@ -8,9 +8,8 @@ describe('ClientDetailComponent', () => {
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ClientDetailComponent]
})
.compileComponents();
declarations: [ClientDetailComponent],
}).compileComponents();
}));
beforeEach(() => {
@@ -1,17 +1,17 @@
import {AfterViewInit, Component, ElementRef, OnInit, ViewChild} from '@angular/core';
import { AfterViewInit, Component, ElementRef, OnInit, ViewChild } from '@angular/core';
import {ClientService} from '../client.service';
import {Client} from '../client';
import {ActivatedRoute, Router} from '@angular/router';
import {ToasterService} from '../../core/toaster.service';
import {ConfirmDialogComponent} from '../../shared/confirm-dialog/confirm-dialog.component';
import { ClientService } from '../client.service';
import { Client } from '../client';
import { ActivatedRoute, Router } from '@angular/router';
import { ToasterService } from '../../core/toaster.service';
import { ConfirmDialogComponent } from '../../shared/confirm-dialog/confirm-dialog.component';
import { MatDialog } from '@angular/material/dialog';
import {FormBuilder, FormGroup} from '@angular/forms';
import { FormBuilder, FormGroup } from '@angular/forms';
@Component({
selector: 'app-client-detail',
templateUrl: './client-detail.component.html',
styleUrls: ['./client-detail.component.css']
styleUrls: ['./client-detail.component.css'],
})
export class ClientDetailComponent implements OnInit, AfterViewInit {
@ViewChild('nameElement', { static: true }) nameElement: ElementRef;
@@ -24,25 +24,24 @@ export class ClientDetailComponent implements OnInit, AfterViewInit {
private dialog: MatDialog,
private fb: FormBuilder,
private toaster: ToasterService,
private ser: ClientService
private ser: ClientService,
) {
this.createForm();
}
createForm() {
this.form = this.fb.group({
code: {value: '', disabled: true},
code: { value: '', disabled: true },
name: '',
enabled: false,
otp: ''
otp: '',
});
}
ngOnInit() {
this.route.data
.subscribe((data: { item: Client }) => {
this.showItem(data.item);
});
this.route.data.subscribe((data: { item: Client }) => {
this.showItem(data.item);
});
}
showItem(item: Client) {
@@ -51,7 +50,7 @@ export class ClientDetailComponent implements OnInit, AfterViewInit {
code: this.item.code || '(Auto)',
name: this.item.name,
enabled: this.item.enabled,
otp: this.item.otp
otp: this.item.otp,
});
}
@@ -62,35 +61,33 @@ export class ClientDetailComponent implements OnInit, AfterViewInit {
}
save() {
this.ser.update(this.getItem())
.subscribe(
(result) => {
this.toaster.show('Success', '');
this.router.navigateByUrl('/clients');
},
(error) => {
this.toaster.show('Danger', error);
}
);
this.ser.update(this.getItem()).subscribe(
(result) => {
this.toaster.show('Success', '');
this.router.navigateByUrl('/clients');
},
(error) => {
this.toaster.show('Danger', error);
},
);
}
delete() {
this.ser.delete(this.item.id)
.subscribe(
(result) => {
this.toaster.show('Success', '');
this.router.navigateByUrl('/clients');
},
(error) => {
this.toaster.show('Danger', error);
}
);
this.ser.delete(this.item.id).subscribe(
(result) => {
this.toaster.show('Success', '');
this.router.navigateByUrl('/clients');
},
(error) => {
this.toaster.show('Danger', error);
},
);
}
confirmDelete(): void {
const dialogRef = this.dialog.open(ConfirmDialogComponent, {
width: '250px',
data: {title: 'Delete Client?', content: 'Are you sure? This cannot be undone.'}
data: { title: 'Delete Client?', content: 'Are you sure? This cannot be undone.' },
});
dialogRef.afterClosed().subscribe((result: boolean) => {
@@ -1,15 +1,18 @@
import {inject, TestBed} from '@angular/core/testing';
import { inject, TestBed } from '@angular/core/testing';
import {ClientListResolverService} from './client-list-resolver.service';
import { ClientListResolverService } from './client-list-resolver.service';
describe('ClientListResolverService', () => {
beforeEach(() => {
TestBed.configureTestingModule({
providers: [ClientListResolverService]
providers: [ClientListResolverService],
});
});
it('should be created', inject([ClientListResolverService], (service: ClientListResolverService) => {
expect(service).toBeTruthy();
}));
it('should be created', inject(
[ClientListResolverService],
(service: ClientListResolverService) => {
expect(service).toBeTruthy();
},
));
});
@@ -1,16 +1,14 @@
import {Injectable} from '@angular/core';
import {ActivatedRouteSnapshot, Resolve, Router, RouterStateSnapshot} from '@angular/router';
import {Client} from './client';
import {Observable} from 'rxjs/internal/Observable';
import {ClientService} from './client.service';
import { Injectable } from '@angular/core';
import { ActivatedRouteSnapshot, Resolve, Router, RouterStateSnapshot } from '@angular/router';
import { Client } from './client';
import { Observable } from 'rxjs/internal/Observable';
import { ClientService } from './client.service';
@Injectable({
providedIn: 'root'
providedIn: 'root',
})
export class ClientListResolver implements Resolve<Client[]> {
constructor(private ser: ClientService, private router: Router) {
}
constructor(private ser: ClientService, private router: Router) {}
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<Client[]> {
return this.ser.list();
@@ -1,33 +1,29 @@
import {DataSource} from '@angular/cdk/collections';
import { DataSource } from '@angular/cdk/collections';
import { MatPaginator } from '@angular/material/paginator';
import { MatSort } from '@angular/material/sort';
import {map} from 'rxjs/operators';
import {merge, Observable, of as observableOf} from 'rxjs';
import {Client} from '../client';
import { map } from 'rxjs/operators';
import { merge, Observable, of as observableOf } from 'rxjs';
import { Client } from '../client';
export class ClientListDataSource extends DataSource<Client> {
constructor(private paginator: MatPaginator, private sort: MatSort, public data: Client[]) {
super();
}
connect(): Observable<Client[]> {
const dataMutations = [
observableOf(this.data),
this.paginator.page,
this.sort.sortChange
];
const dataMutations = [observableOf(this.data), this.paginator.page, this.sort.sortChange];
// Set the paginators length
this.paginator.length = this.data.length;
return merge(...dataMutations).pipe(map(() => {
return this.getPagedData(this.getSortedData([...this.data]));
}));
return merge(...dataMutations).pipe(
map(() => {
return this.getPagedData(this.getSortedData([...this.data]));
}),
);
}
disconnect() {
}
disconnect() {}
private getPagedData(data: Client[]) {
const startIndex = this.paginator.pageIndex * this.paginator.pageSize;
@@ -4,52 +4,55 @@
</mat-card-title-group>
<mat-card-content>
<mat-table #table [dataSource]="dataSource" matSort aria-label="Elements">
<!-- Code Column -->
<ng-container matColumnDef="code">
<mat-header-cell *matHeaderCellDef mat-sort-header>Name</mat-header-cell>
<mat-cell *matCellDef="let row">{{row.code}}</mat-cell>
<mat-cell *matCellDef="let row">{{ row.code }}</mat-cell>
</ng-container>
<!-- Name Column -->
<ng-container matColumnDef="name">
<mat-header-cell *matHeaderCellDef mat-sort-header>Name</mat-header-cell>
<mat-cell *matCellDef="let row"><a [routerLink]="['/clients', row.id]">{{row.name}}</a></mat-cell>
<mat-cell *matCellDef="let row"
><a [routerLink]="['/clients', row.id]">{{ row.name }}</a></mat-cell
>
</ng-container>
<!-- Enabled Column -->
<ng-container matColumnDef="enabled">
<mat-header-cell *matHeaderCellDef mat-sort-header>Is Enabled?</mat-header-cell>
<mat-cell *matCellDef="let row">{{row.enabled}}</mat-cell>
<mat-cell *matCellDef="let row">{{ row.enabled }}</mat-cell>
</ng-container>
<!-- OTP Column -->
<ng-container matColumnDef="otp">
<mat-header-cell *matHeaderCellDef mat-sort-header>otp</mat-header-cell>
<mat-cell *matCellDef="let row">{{row.otp}}</mat-cell>
<mat-cell *matCellDef="let row">{{ row.otp }}</mat-cell>
</ng-container>
<!-- Created Column -->
<ng-container matColumnDef="created">
<mat-header-cell *matHeaderCellDef mat-sort-header>Created</mat-header-cell>
<mat-cell *matCellDef="let row">{{row.created | localTime}}</mat-cell>
<mat-cell *matCellDef="let row">{{ row.created | localTime }}</mat-cell>
</ng-container>
<!-- Last Login Column -->
<ng-container matColumnDef="lastLogin">
<mat-header-cell *matHeaderCellDef mat-sort-header>Last Login</mat-header-cell>
<mat-cell *matCellDef="let row">{{row.lastLogin | localTime}}</mat-cell>
<mat-cell *matCellDef="let row">{{ row.lastLogin | localTime }}</mat-cell>
</ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns;"></mat-row>
<mat-row *matRowDef="let row; columns: displayedColumns"></mat-row>
</mat-table>
<mat-paginator #paginator
[length]="dataSource.data.length"
[pageIndex]="0"
[pageSize]="50"
[pageSizeOptions]="[25, 50, 100, 250]">
<mat-paginator
#paginator
[length]="dataSource.data.length"
[pageIndex]="0"
[pageSize]="50"
[pageSizeOptions]="[25, 50, 100, 250]"
>
</mat-paginator>
</mat-card-content>
</mat-card>
@@ -1,6 +1,6 @@
import {ComponentFixture, fakeAsync, TestBed} from '@angular/core/testing';
import { ComponentFixture, fakeAsync, TestBed } from '@angular/core/testing';
import {ClientListComponent} from './client-list.component';
import { ClientListComponent } from './client-list.component';
describe('ClientListComponent', () => {
let component: ClientListComponent;
@@ -8,9 +8,8 @@ describe('ClientListComponent', () => {
beforeEach(fakeAsync(() => {
TestBed.configureTestingModule({
declarations: [ClientListComponent]
})
.compileComponents();
declarations: [ClientListComponent],
}).compileComponents();
fixture = TestBed.createComponent(ClientListComponent);
component = fixture.componentInstance;
@@ -1,14 +1,14 @@
import {Component, OnInit, ViewChild} from '@angular/core';
import { Component, OnInit, ViewChild } from '@angular/core';
import { MatPaginator } from '@angular/material/paginator';
import { MatSort } from '@angular/material/sort';
import {ClientListDataSource} from './client-list-datasource';
import {Client} from '../client';
import {ActivatedRoute} from '@angular/router';
import { ClientListDataSource } from './client-list-datasource';
import { Client } from '../client';
import { ActivatedRoute } from '@angular/router';
@Component({
selector: 'app-client-list',
templateUrl: './client-list.component.html',
styleUrls: ['./client-list.component.css']
styleUrls: ['./client-list.component.css'],
})
export class ClientListComponent implements OnInit {
@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator;
@@ -18,14 +18,12 @@ export class ClientListComponent implements OnInit {
/** Columns displayed in the table. Columns IDs can be added, removed, or reordered. */
displayedColumns = ['code', 'name', 'enabled', 'otp', 'created', 'lastLogin'];
constructor(private route: ActivatedRoute) {
}
constructor(private route: ActivatedRoute) {}
ngOnInit() {
this.route.data
.subscribe((data: { list: Client[] }) => {
this.list = data.list;
});
this.route.data.subscribe((data: { list: Client[] }) => {
this.list = data.list;
});
this.dataSource = new ClientListDataSource(this.paginator, this.sort, this.list);
}
}
@@ -1,15 +1,18 @@
import {inject, TestBed} from '@angular/core/testing';
import { inject, TestBed } from '@angular/core/testing';
import {ClientResolverService} from './client-resolver.service';
import { ClientResolverService } from './client-resolver.service';
describe('ClientResolverService', () => {
beforeEach(() => {
TestBed.configureTestingModule({
providers: [ClientDetailResolverService]
providers: [ClientDetailResolverService],
});
});
it('should be created', inject([ClientDetailResolverService], (service: ClientDetailResolverService) => {
expect(service).toBeTruthy();
}));
it('should be created', inject(
[ClientDetailResolverService],
(service: ClientDetailResolverService) => {
expect(service).toBeTruthy();
},
));
});
@@ -1,16 +1,14 @@
import {Injectable} from '@angular/core';
import {ActivatedRouteSnapshot, Resolve, Router, RouterStateSnapshot} from '@angular/router';
import {ClientService} from './client.service';
import {Client} from './client';
import {Observable} from 'rxjs/internal/Observable';
import { Injectable } from '@angular/core';
import { ActivatedRouteSnapshot, Resolve, Router, RouterStateSnapshot } from '@angular/router';
import { ClientService } from './client.service';
import { Client } from './client';
import { Observable } from 'rxjs/internal/Observable';
@Injectable({
providedIn: 'root'
providedIn: 'root',
})
export class ClientResolver implements Resolve<Client> {
constructor(private ser: ClientService, private router: Router) {
}
constructor(private ser: ClientService, private router: Router) {}
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<Client> {
const id = route.paramMap.get('id');
@@ -1,4 +1,4 @@
import {ClientRoutingModule} from './client-routing.module';
import { ClientRoutingModule } from './client-routing.module';
describe('ClientRoutingModule', () => {
let clientRoutingModule: ClientRoutingModule;
@@ -1,11 +1,11 @@
import {NgModule} from '@angular/core';
import {CommonModule} from '@angular/common';
import {RouterModule, Routes} from '@angular/router';
import {ClientListResolver} from './client-list-resolver.service';
import {ClientResolver} from './client-resolver.service';
import {ClientListComponent} from './client-list/client-list.component';
import {ClientDetailComponent} from './client-detail/client-detail.component';
import {AuthGuard} from '../auth/auth-guard.service';
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule, Routes } from '@angular/router';
import { ClientListResolver } from './client-list-resolver.service';
import { ClientResolver } from './client-resolver.service';
import { ClientListComponent } from './client-list/client-list.component';
import { ClientDetailComponent } from './client-detail/client-detail.component';
import { AuthGuard } from '../auth/auth-guard.service';
const clientRoutes: Routes = [
{
@@ -13,38 +13,28 @@ const clientRoutes: Routes = [
component: ClientListComponent,
canActivate: [AuthGuard],
data: {
permission: 'Cost Centres'
permission: 'Cost Centres',
},
resolve: {
list: ClientListResolver
}
list: ClientListResolver,
},
},
{
path: ':id',
component: ClientDetailComponent,
canActivate: [AuthGuard],
data: {
permission: 'Cost Centres'
permission: 'Cost Centres',
},
resolve: {
item: ClientResolver
}
}
item: ClientResolver,
},
},
];
@NgModule({
imports: [
CommonModule,
RouterModule.forChild(clientRoutes)
],
exports: [
RouterModule
],
providers: [
ClientListResolver,
ClientResolver
]
imports: [CommonModule, RouterModule.forChild(clientRoutes)],
exports: [RouterModule],
providers: [ClientListResolver, ClientResolver],
})
export class ClientRoutingModule {
}
export class ClientRoutingModule {}
@@ -1,4 +1,4 @@
import {ClientModule} from './client.module';
import { ClientModule } from './client.module';
describe('ClientModule', () => {
let clientModule: ClientModule;
+12 -16
View File
@@ -1,9 +1,9 @@
import {NgModule} from '@angular/core';
import {CommonModule} from '@angular/common';
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import {ClientListComponent} from './client-list/client-list.component';
import {ClientDetailComponent} from './client-detail/client-detail.component';
import {ClientRoutingModule} from './client-routing.module';
import { ClientListComponent } from './client-list/client-list.component';
import { ClientDetailComponent } from './client-detail/client-detail.component';
import { ClientRoutingModule } from './client-routing.module';
import { MatButtonModule } from '@angular/material/button';
import { MatCardModule } from '@angular/material/card';
import { MatCheckboxModule } from '@angular/material/checkbox';
@@ -13,10 +13,10 @@ import { MatPaginatorModule } from '@angular/material/paginator';
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
import { MatSortModule } from '@angular/material/sort';
import { MatTableModule } from '@angular/material/table';
import {CdkTableModule} from '@angular/cdk/table';
import {SharedModule} from '../shared/shared.module';
import {FlexLayoutModule} from '@angular/flex-layout';
import {ReactiveFormsModule} from '@angular/forms';
import { CdkTableModule } from '@angular/cdk/table';
import { SharedModule } from '../shared/shared.module';
import { FlexLayoutModule } from '@angular/flex-layout';
import { ReactiveFormsModule } from '@angular/forms';
@NgModule({
imports: [
@@ -34,12 +34,8 @@ import {ReactiveFormsModule} from '@angular/forms';
MatTableModule,
ReactiveFormsModule,
SharedModule,
ClientRoutingModule
ClientRoutingModule,
],
declarations: [
ClientListComponent,
ClientDetailComponent
]
declarations: [ClientListComponent, ClientDetailComponent],
})
export class ClientModule {
}
export class ClientModule {}
@@ -1,11 +1,11 @@
import {inject, TestBed} from '@angular/core/testing';
import { inject, TestBed } from '@angular/core/testing';
import {ClientService} from './client.service';
import { ClientService } from './client.service';
describe('ClientService', () => {
beforeEach(() => {
TestBed.configureTestingModule({
providers: [ClientService]
providers: [ClientService],
});
});
+30 -27
View File
@@ -1,49 +1,52 @@
import {Injectable} from '@angular/core';
import {HttpClient, HttpHeaders, HttpParams} from '@angular/common/http';
import {ErrorLoggerService} from '../core/error-logger.service';
import {catchError} from 'rxjs/operators';
import {Observable} from 'rxjs/internal/Observable';
import {Client} from './client';
import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';
import { ErrorLoggerService } from '../core/error-logger.service';
import { catchError } from 'rxjs/operators';
import { Observable } from 'rxjs/internal/Observable';
import { Client } from './client';
const httpOptions = {
headers: new HttpHeaders({'Content-Type': 'application/json'})
headers: new HttpHeaders({ 'Content-Type': 'application/json' }),
};
const url = '/api/clients';
const serviceName = 'ClientService';
@Injectable({
providedIn: 'root'
providedIn: 'root',
})
export class ClientService {
constructor(private http: HttpClient, private log: ErrorLoggerService) {
}
constructor(private http: HttpClient, private log: ErrorLoggerService) {}
get(id: string): Observable<Client> {
const getUrl: string = (id === null) ? url : `${url}/${id}`;
return <Observable<Client>>this.http.get<Client>(getUrl)
.pipe(
catchError(this.log.handleError(serviceName, `get id=${id}`))
);
const getUrl: string = id === null ? url : `${url}/${id}`;
return <Observable<Client>>(
this.http
.get<Client>(getUrl)
.pipe(catchError(this.log.handleError(serviceName, `get id=${id}`)))
);
}
list(): Observable<Client[]> {
return <Observable<Client[]>>this.http.get<Client[]>(`${url}/list`)
.pipe(
catchError(this.log.handleError(serviceName, 'list'))
);
return <Observable<Client[]>>(
this.http
.get<Client[]>(`${url}/list`)
.pipe(catchError(this.log.handleError(serviceName, 'list')))
);
}
update(client: Client): Observable<Client> {
return <Observable<Client>>this.http.put<Client>(`${url}/${client.id}`, client, httpOptions)
.pipe(
catchError(this.log.handleError(serviceName, 'update'))
);
return <Observable<Client>>(
this.http
.put<Client>(`${url}/${client.id}`, client, httpOptions)
.pipe(catchError(this.log.handleError(serviceName, 'update')))
);
}
delete(id: string): Observable<Client> {
return <Observable<Client>>this.http.delete<Client>(`${url}/${id}`, httpOptions)
.pipe(
catchError(this.log.handleError(serviceName, 'delete'))
);
return <Observable<Client>>(
this.http
.delete<Client>(`${url}/${id}`, httpOptions)
.pipe(catchError(this.log.handleError(serviceName, 'delete')))
);
}
}